我有将网络图像保存到本地缓存文件的功能,但是在将下载的列表文件存储到List<XFile>. 这是我的下载功能:
List<XFile>? imageFileList = [];
Future<File> downloadImage(url, filename) async {
var httpClient = HttpClient();
try {
var request = await httpClient.getUrl(Uri.parse(url));
var response = await request.close();
var bytes = await consolidateHttpClientResponseBytes(response);
final dir = await getTemporaryDirectory();
File file = File('${dir.path}/$filename');
await file.writeAsBytes(bytes);
print('downloaded file path = ${file.path}');
return file;
} catch (error) {
print('download error');
return File('');
}
}
Run Code Online (Sandbox Code Playgroud)
有什么方法可以将fileimageFileList 保存为:
imageFileList!.add(file);
Run Code Online (Sandbox Code Playgroud)
更改您的列表类型:
由此:
List<XFile>? imageFileList = [];
Run Code Online (Sandbox Code Playgroud)
对此:
List<File>? imageFileList = [];
final ImagePicker _picker = ImagePicker();
getImage() async {
var images = await _picker.pickMultiImage();
images!.forEach((image) {
setState(() {
_imageFileList!.add(File(image.path));
});
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9705 次 |
| 最近记录: |