file_picker 的 API 简洁易用,支持全平台(Android / iOS / Mac / Linux / Windows),是我开发桌面应用时的首选。
这边博客简单介绍它的基本用法并提供一个应用实例。
基本用法
选择单个文件
FilePickerResult? result =awaitFilePicker.platform.pickFiles();if(result !=null){File file =File(result.files.single.path!);}else{// User canceled the picker}
选择多个文件
FilePickerResult? result =awaitFilePicker.platform.pickFiles(allowMultiple:true);if(result !=null){List<File> files = result.paths.map((path)=>File(path!)).toList();}else{// User canceled the picker}
指定文件后缀
FilePickerResult? result =awaitFilePicker.platform.pickFiles(
type:FileType.custom,
allowedExtensions:['jpg','pdf','doc'],);
选择文件夹
String? selectedDirectory =awaitFilePicker.platform.getDirectoryPath();if(selectedDirectory ==null){// User canceled the picker}
读取文件属性
FilePickerResult? result =awaitFilePicker.platform.pickFiles();if(result !=null){PlatformFile file = result.files.first;print(file.name);print(file.bytes);print(file.size);print(file.extension);print(file.path);}else{// User canceled the picker}