无法打开文件,路径= '/data/data/com.example.demo/cache/a.png'(操作系统错误:无此类文件或目录,errno = 2))
我想做我生成的图像转换为XFile。当我尝试,然后我面临这个问题(无法打开文件,路径= '/data/data/com.example.demo/cache/a.png'(操作系统错误:没有这样的文件或目录,errno = 2))。
函数内部代码:
final XFile? pickedImage = await ImagePicker().pickImage(source: source);
if (pickedImage != null) {
//for convert greyscale
final Uint8List imgBytes = await File(pickedImage.path).readAsBytes();
final imgLib.Image? image = imgLib.decodeImage(imgBytes);
img = imgLib.grayscale(image!);
print("object img: ${img!.getBytes()}");
final root = await getTemporaryDirectory();
final path = "${root.path}/a.png";
print("object path: $path");
imageFile = XFile(path,bytes: img!.getBytes());
和UI代码:
image: FileImage(File(imageFile!.path)),
1条答案
按热度按时间s5a0g9ez1#
你正面临这个错误,因为应用程序是不会搜索所有的文件管理器,以获得不同设备上的图像.所以存储base64字符串在一个变量中,你也可以解码.顺便说一句,你的问题我尽力回答在所有的方式我看到你的代码,我认为你也转换成字节和base64.你可以使用下面的代码.它将从图库中选取图像,然后将其存储为Xfile,然后读取其字节并将字节转换为base 64字符串