我使用以下代码将我的图像位图编码为byte []然后编码为字符串,但在将其编码为byte []时,它表示无法编码..
Bitmap bm = BitmapFactory.decodeFile(path);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
(bm).compress(Bitmap.CompressFormat.JPEG, 100, stream);
bm.recycle();
byte[] byteFormat = stream.toByteArray();
String encodedImage = Base64.encodeToString(byteFormat, Base64.NO_WRAP);
该应用程序工作正常,但我被困在这里。建议问题。
答案 0 :(得分:0)
public static byte[] bitmapToByteArray(Bitmap bitmap){
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
bitmap.recycle();
return byteArray;
}
答案 1 :(得分:0)
试试这个我的作品:)
public String imageToBaseString(String path) {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 1;
Bitmap bm = BitmapFactory.decodeFile(path, options);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.PNG, 100, baos);
byte[] b = baos.toByteArray();
return Base64.encodeToString(b, Base64.DEFAULT);
}