【发布时间】:2018-04-18 04:37:22
【问题描述】:
我正在开发一个应用程序,用户可以在其中上传图片作为简短博客文章的一部分;然后此图像经过 base64 编码并存储在 MS SQL Server 数据库中。当我稍后尝试查看图像时,它不会显示。我在ImageView 中有一个占位符,当要加载图像但实际上没有图像显示时它会消失。
编码图像:
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
img.compress(Bitmap.CompressFormat.JPEG, 35, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
String image = Base64.encodeToString(byteArray, Base64.DEFAULT);
解码图片并放入ImageView:
byte[] decodeString = Base64.decode(blog.getImage(), Base64.DEFAULT);
Bitmap decodebitmap = BitmapFactory.decodeByteArray(decodeString, 0, decodeString.length);
image1.setImageBitmap(decodebitmap);
非常感谢任何关于我哪里出错的帮助。
【问题讨论】:
-
this image is then encoded to binary data??那会是什么? -
@greenapps 编码为 Base64
-
所以你是调用base64字符串二进制数据?很奇怪。我想说的是更多的文字。
-
@greenapps 据我了解,base64 字符串代表二进制图像数据,因此我的措辞 :)
-
错了。你应该改为
this image is then base64 encoded。
标签: java android sql-server image base64