如何編碼和解碼base64格式的任何圖像。Android:編碼和解碼base64
我不知道任何關於base64的東西,剛纔我才知道它以String格式保存圖像。請解釋一下base64以及如何在android編碼中使用它。 它會減小圖像的大小嗎?
在此先感謝...
如何編碼和解碼base64格式的任何圖像。Android:編碼和解碼base64
我不知道任何關於base64的東西,剛纔我才知道它以String格式保存圖像。請解釋一下base64以及如何在android編碼中使用它。 它會減小圖像的大小嗎?
在此先感謝...
Base64讓您表示ASCII格式的二進制數據,你可以用它來發送/接收圖像到端點
編碼/解碼檢查了這兩種方法:
public static String getBase64(Bitmap bitmap)
{
try{
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 90, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
return Base64.encodeToString(byteArray, Base64.NO_WRAP);
}
catch(Exception e)
{
return null;
}
}
public static Bitmap getBitmap(String base64){
byte[] decodedString = Base64.decode(base64, Base64.NO_WRAP);
return BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
}
要編碼的任何文件:
private String encodeFileToBase64(String filePath)
{
InputStream inputStream = new FileInputStream(filePath);//You can get an inputStream using any IO API
byte[] bytes;
byte[] buffer = new byte[8192];
int bytesRead;
ByteArrayOutputStream output = new ByteArrayOutputStream();
try {
while ((bytesRead = inputStream.read(buffer)) != -1) {
output.write(buffer, 0, bytesRead);
}
} catch (IOException e) {
e.printStackTrace();
}
bytes = output.toByteArray();
return Base64.encodeToString(bytes, Base64.DEFAULT);
}
解碼:[?如何將圖像轉換成字符串的Base64]
byte[] data = Base64.decode(base64, Base64.DEFAULT);
的
它只是將文件轉換爲其base64表示形式,並避免對圖像進行絕對無意義的重新壓縮。 – 2014-09-05 18:53:08
可能重複(http://stackoverflow.com/questions/4830711/how-to-convert-a-image-into-base64-字符串) – 2014-09-05 18:38:28