You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flutter中如何将MAUI传递的Base64String转换为Uint8List?

将MAUI传递的Base64字符串转换为Flutter的Uint8List

你只需要利用Flutter自带的dart:convert库中的base64.decode()方法,就能把接收的Base64字符串直接转换成Uint8List,替换原来从资源加载的逻辑即可,步骤如下:

  1. 导入dart:convert包(base64解码方法包含在这个包里)
  2. 拿到从MAUI Intent传递过来的Base64字符串
  3. 调用base64.decode()方法将其转为Uint8List
  4. 后续的图片解码逻辑和原有代码保持一致

替换后的完整代码示例:

import 'dart:convert';
import 'package:image/image.dart' as img;

// 假设receivedBase64是你从MAUI那边接收到的Base64字符串
String receivedBase64 = "替换为实际接收的Base64内容";

// 转换Base64到Uint8List
final Uint8List bytesImg = base64.decode(receivedBase64);

// 解码图片,逻辑和原有代码一致
img.Image? image = img.decodeImage(bytesImg);

注意事项

如果MAUI传递的Base64字符串带有类似data:image/jpeg;base64,这样的前缀,需要先去除前缀再解码,示例代码如下:

// 拆分并获取纯Base64部分
String pureBase64 = receivedBase64.split(',').last;
final Uint8List bytesImg = base64.decode(pureBase64);

内容的提问来源于stack exchange,提问作者Ani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 01:19:55