2019年5月10日 星期五

[ Android Studio ] 圖片檔 Bitmap 與字串 String 的互相轉換二進位 Base64

介紹:
使用的元件 import android.util.Base64; 來執行圖片轉成二進位字串與二進位字串轉成圖片的方法。


程式語法:
1. String 轉換成 Bitmap



public Bitmap stringToBitmap(String string) {
Bitmap bitmap = null;
try {
byte[] bitmapArray;
bitmapArray = Base64.decode(string, Base64.DEFAULT);
bitmap = BitmapFactory.decodeByteArray(bitmapArray, 0,
bitmapArray.length);
} catch (Exception e) {
e.printStackTrace();
}
return bitmap;
}



2. Bitmap 轉換成 String

public String bitmapToString(Bitmap bitmap){

String string=null;
ByteArrayOutputStream bStream=new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG,100,bStream);
byte[]bytes=bStream.toByteArray();
string=Base64.encodeToString(bytes,Base64.DEFAULT);
return string;
}

圖互相轉換與顯示在介面上的方法:

public void Test(){
ImageView img = (ImageView) findViewById(R.id.img);
        //這行是先將圖片轉換成Bitmap,然後將Bitmap轉換成字串。
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.icon);
String bitmapString = bitmapToString(bitmap);


       //將String轉換成Bitmap後,再用setImageBitmap將圖顯示出來。
img.setImageBitmap(stringToBitmap(bitmapString));
}

沒有留言:

張貼留言

影片的問題請留在影片的留言區裡。
部落格不會另外通知給我,所以很難發現你有留言。