你好吗?
我正在尝试从json获取数据以在屏幕上显示,该图像应类似于下图。我可以获取大多数数据,除了一个编码为String的字段,其中包含图像和类似这样的描述:
"lessonText": "{\"ops\":[{\"insert\":{\"image\":\"data:image/jpeg;base64,(IMAGE CODE HERE)=\"}},{\"attributes\":{\"color\":\"#444444\"},\"insert\":\"(LESSON TEXT HERE)\"},{\"insert\":\"\\n\"}]}",
如何从这里提取数据?我试图将其转换为Map,但无法正常工作。
谢谢您的帮助!
最佳答案
与此相符的东西应该给你的印象
// json string containing the base64 image string
String jsonString = "{\"ops\":[{\"insert\":{\"image\":\"data:image/png;base64,(IMAGE CODE HERE)=\"}},{\"attributes\":{\"color\":\"#444444\"},\"insert\":\"(LESSON TEXT HERE)\"},{\"insert\":\"\\n\"}]}";
// convert the string to a map structure
Map<String, dynamic> json = jsonDecode(jsonString);
// extract the image string
String imageString = json['ops'][0]['insert']['image'];
// extract the base64 string
var prefix = "data:image/png;base64,";
var imageBase64String = imageString.substring(prefix.length);
// decode the base 64 string
var bytes = base64Decode(imageBase64String);
// build the image widget from bytes
var imageWidget = Image.memory(bytes);
关于json - 如何从此json字段获取数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62480513/