在我的应用程序中,我将base64字符串转换为image。因为我最初将base 64文件转换为字节数组,后来我尝试转换为图像。 要转换为图像,我使用以下代码
File sdImageMainDirectory = new File("/data/data/com.ayansys.Base64trial");
FileOutputStream fileOutputStream = null;
String nameFile="Images";
try {
BitmapFactory.Options options=new BitmapFactory.Options();
options.inSampleSize = 5;
options.inDither = true;
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
Bitmap myImage = BitmapFactory.decodeByteArray(imageData, 0, imageData.length);
fileOutputStream = new FileOutputStream(
sdImageMainDirectory.toString() +"/" + nameFile + ".jpg");
BufferedOutputStream bos = new BufferedOutputStream(
fileOutputStream);
myImage.compress(CompressFormat.JPEG, quality, bos);
bos.flush();
bos.close();
但是我的图片在
时显示为nullBitmap myImage = BitmapFactory.decodeByteArray(imageData, 0, imageData.length);
请告诉我您宝贵的建议。
提前致谢:)
答案 0 :(得分:2)
decodeByteArray不会将base 64编码转换为字节数组。您需要首先使用Base64到字节数组转换器
答案 1 :(得分:1)
我遇到了同样的问题。我通过删除字符串的这一部分来解决它:
“数据:图像/ JPEG; BASE64,”