Flutter 没有提供内置的文件选择器,但社区内有人贡献了一个比较完整的解决方案——file_picker。
file_picker
的 API 简洁易用,支持全平台(Android / iOS / Mac / Linux / Windows),是我开发桌面应用时的首选。
这边博客简单介绍它的基本用法并提供一个应用实例。
基本用法
选择单个文件
FilePickerResult? result = await FilePicker.platform.pickFiles();
if (result != null) {
File file = File(result.files.single.path!);
} else {
// User canceled the picker
}
选择多个文件
FilePickerResult? result = await FilePicker.platform.pickFiles(allowMultiple: true);
if (result != null) {
List<File> files = result.paths.map((path)