File 如何在Flatter中将图像文件转换为base64字符串?

File 如何在Flatter中将图像文件转换为base64字符串?,file,flutter,dart,base64,File,Flutter,Dart,Base64,我正在尝试转换颤振中的图像文件: File _img=new File('/data/user/0/com.example.test3/app_flutter/2020-10-29T17:18:56.210347.png'); List<int> imageBytes = _img.readAsBytesSync(); String imageB64 = base64Encode(imageBytes); print(imageB64); dart base64格式是否与其

我正在尝试转换颤振中的图像文件:

 File _img=new File('/data/user/0/com.example.test3/app_flutter/2020-10-29T17:18:56.210347.png');
 List<int> imageBytes = _img.readAsBytesSync();
 String imageB64 = base64Encode(imageBytes);
 print(imageB64);
dart base64格式是否与其他格式不同?
谢谢。

您必须将字节转换为
Uint8List
对象,而不是
列表

File\u img=File(
“/data/user/0/com.example.test3/app_flatter/2020-10-29T17:18:56.210347.png”);
final bytes=Uint8List.fromList(_img.readAsBytesSync());
最终imgBase64=base64编码(字节);
打印(imgBase64);

我发现“打印”功能的这种情况下无法完全显示base64代码。 如果要验证,需要导出到文本文件:

 _write(String text) async {
    final File file = File('/storage/emulated/0/xxx/my_file.txt');
    await file.writeAsString(text);
    print(file);
  }
 _write(String text) async {
    final File file = File('/storage/emulated/0/xxx/my_file.txt');
    await file.writeAsString(text);
    print(file);
  }