我正在尝试将base64图像转换为flutter上的图像并显示在列表视图中,如下所示:
_fileItem(Model file) {
return Card(
child: ListTile(
leading: Image.memory(
base64Decode(file.image),
width: 100,
fit: BoxFit.cover,
),
),
);
}但是我得到了这个错误:
The following FormatException was thrown building:
Invalid character (at character 77)
iVBORw0KGgoAAAANSUhEUgAAAUAAAAFACAIAAABC8jL9AAAAA3NCSVQICAjb4U/gAAAgAElEQVR4
^为了用online converter site测试我的base64镜像,我打开了我的base64字符串文件,结果如下:

但是在颤动中我得到了错误?
我在我的插件中通过这个方法将这个base64转换成原生的java:
private String getBase64Image(Bitmap bitmap) {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.PNG, 100, byteArrayOutputStream);
byte[] byteArray = byteArrayOutputStream.toByteArray();
return Base64.encodeToString(byteArray, Base64.DEFAULT);
}发布于 2020-06-03 18:51:38
您的base64编码字符串包含换行符。可能是因为您从文本编辑器中复制了它。去掉断裂处,它应该可以工作了。
您可以在此处检查字符串https://www.textmagic.com/free-tools/unicode-detector,它将显示回车符('\n')。
https://stackoverflow.com/questions/62170687
复制相似问题