如何在 flutter 中将 List<File> 转换为 List<Asset>

HOW to convert List<File> into List<Asset> in flutter

我正在使用多图像选择器从图库中获取多张图像,它 return 是一个资产列表, 并且我已经使用资产中的路径将该图像成功转换为文件列表作为列表。

resultList = await MultiImagePicker.pickImages(
    maxImages: 5,
    enableCamera: false,
  );

file.add(asset.identifier);

var path = await FlutterAbsolutePath.getAbsolutePath(resultList[i].identifier);
                _pathofimages.add(File(path));

但我不需要再次编辑它,因为我也实现了裁剪功能... 所以在那种情况下我需要逆转这个过程

喜欢 使用文件路径

在列表中添加资产

我做了一个转换函数。 你会尝试使用这个吗?

uuid:^2.1.0

import 'package:path/path.dart';
import 'package:uuid/uuid.dart';

...

  Future<Asset> fileToAsset(File image) async {
    String fileName = basename(image.path);
    var decodedImage = await decodeImageFromList(image.readAsBytesSync());
    return Asset(uuid.v4(), fileName, decodedImage.width, decodedImage.height);
  }