在現(xiàn)在的網(wǎng)絡(luò)開發(fā)中,上傳圖片類的需求實(shí)在是太普通不過了,但是對(duì)于怎么樣做到上傳圖片,對(duì)于剛開始建立項(xiàng)目的時(shí)候,還是有點(diǎn)不知所措的。也許有幸,我們做的項(xiàng)目是之前已經(jīng)有人寫過類似的用例了,那么我們只需要依葫蘆畫瓢就行了。
好好了解下圖片上傳(文件上傳)的方式,對(duì)于認(rèn)知的提升還是有好處的。而且說不定哪天你就有個(gè)這樣的需求呢,這里是一條龍上傳。
本文就一個(gè)從app到php層,再到j(luò)ava層的流程,演譯下整個(gè)上傳圖片的流程吧。
一、app端獲取用戶選擇的圖片,轉(zhuǎn)化為輸入流,上傳至php前端接口:
package com.dia.ration;import java.io.DataOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import java.net.HttpURLConnection;import java.net.MalformedURLException;import java.net.URL;import java.util.HashMap;import java.util.Map;import java.util.UUID;/** * 上傳文件到服務(wù)器類 */public class UploadUtil { private static final String TAG = "uploadFile"; private static final int TIME_OUT = 10 * 1000; // 超時(shí)時(shí)間 private static final String CHARSET = "utf-8"; // 設(shè)置編碼 /** * Android上傳文件到服務(wù)端 * * @param file 需要上傳的文件 &nb