【发布时间】:2015-05-15 21:14:16
【问题描述】:
代码
public Bitmap StringToBitMap(String encodedString){
try{
byte [] encodeByte=Base64.decode(encodedString,Base64.DEFAULT);
Bitmap bitmap=BitmapFactory.decodeByteArray(encodeByte, 0, encodeByte.length);
return bitmap;
}catch(Exception e){
e.getMessage();
return null;
}
}
即使我给了它编码的64(utf-8)字符串,它也总是返回null--->aGVsbG8=
为什么会发生这种情况,任何人都有想法..??我在做什么错任何人都可以建议我...
【问题讨论】:
-
好吧,如果抛出异常,您将返回 null - 您正在调用
getMessage()但没有记录它或执行类似的操作。我的猜测是抛出了一个异常,但是由于缺少日志记录,您不知道是什么... -
我知道,但我的问题是为什么这个发生我已经传递了 64base 字符串,所以它没有将它转换为位图,
-
提示:如果您查看异常,您会发现它发生的原因。这就是例外比“失败”更丰富的意义所在。 (如果这真的是你完整的 base64 信息,我怀疑问题在于它不是一个完整的图像文件。)
-
位图就是图像
-
aGVsbG8=只是“hello”的 ASCII 编码的 base64 编码形式。你到底期望返回什么?如果您希望它是一个带有该文本的位图,那么您使用的是完全错误的方法。
标签: java android string bitmap