我还在纠结这个恼人的错误。我有base64字符串,我想转换为图像。这里是最简单的代码,这是做什么,正是我想要的(至少,我看到它在不同的答案和代码样本的SO)。我得到的错误:
Invalid character (at character 6)
我的密码是:
final String encodedStr = 'https://securelink.com/cameratypes/picture/13/true';
Uint8List bytes = base64.decode(encodedStr);
我想显示图像:
Image.memory(bytes)
2条答案
按热度按时间b4lqfgs41#
最后,我找到了解决方案,我不知道它是否重要,是否对像我这样挣扎的人有用,但我会帮助他们。所以,这将是简单和快速的,因为我已经把我的图像转换成了nedeed formart(我的图像是base64格式),我犯了一个愚蠢的错误,当我试图将它转换为字符串再次,因为它已经是一个字符串,我需要Uint8List格式。边注:如果您API开发人员说它应该接受cookie或任何类型的身份验证,那么它应该接受。
代码:
这段代码直接将您的图像保存到应用程序库中,并且不会在屏幕上显示任何内容
kokeuurv2#
如果您的URI包含RFC-2397中定义的逗号后的数据,Dart的URI类基于RFC-3986,因此您不能使用它。请用逗号分隔字符串并取其最后一部分:
参考:https://stackoverflow.com/a/59015116/12382178