如何将图像转换为Base64字符串?

空指针异常

将图像(最大200 KB)转换为Base64字符串的代码是什么?

我需要知道如何使用Android,因为我必须添加功能以将图像上传到我的主应用程序中的远程服务器,并将它们作为字符串放入数据库的一行中。

我正在Google和Stack Overflow中进行搜索,但是我找不到我可以负担的简单示例,也找到了一些示例,但是它们并不是在讨论如何转换为String。然后,我需要转换为字符串以通过JSON上传到我的远程服务器。

xil3

您可以使用Base64 Android类:

String encodedImage = Base64.encodeToString(byteArrayImage, Base64.DEFAULT);

但是,您必须将图像转换为字节数组。这是一个例子:

Bitmap bm = BitmapFactory.decodeFile("/path/to/image.jpg");
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bm.compress(Bitmap.CompressFormat.JPEG, 100, baos); // bm is the bitmap object
byte[] b = baos.toByteArray();

*更新*

如果您使用的是较旧的SDK库(因为您希望它在具有较旧版本OS的手机上运行),则不会打包Base64类(因为它只是在API级别8 AKA 2.2版中发布的)。

请查看本文以找到解决方法:

如何base64编码解码Android

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章