圖片上傳通過Bitmap轉換成Base64編碼然後當做請求引數上傳
阿新 • • 發佈:2019-01-23
在開發過程中經常會用到圖片上傳場景,如果是在HTML中我們上傳圖片可以通過提交表單的形式上傳圖片,但是如果要在Android實現圖片上傳,我們可以通過提交表單的形式提交表單,但是還有一種就是把我們的圖片轉換成Base64編碼,把圖片編碼通過請求引數的形式上傳到服務,服務端在通過解碼的形式得打圖片。
public static String bitmapToBase64NONseal(Bitmap bitmap) {
//轉換結束以後的Base64編碼
String result = null;
//讀取bitmap以後通過位元組陣列來盛裝
ByteArrayOutputStream baos = null ;
try {
if (bitmap != null) {
baos = new ByteArrayOutputStream();
//通過Bitmap的方法把Bitmap資料放到位元組陣列當中,用於之後的轉換使用
bitmap.compress(Bitmap.CompressFormat.PNG, 100, baos);
baos.flush();
baos.close();
//把位元組陣列轉換
byte [] bitmapBytes = baos.toByteArray();
//進行編碼轉換
result = Base64.encodeToString(bitmapBytes, Base64.DEFAULT);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (baos != null) {
baos.flush();
baos.close ();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return result;
}