A package that allows you to use a native file explorer to pick single or multiple absolute file paths, with extensions filtering support.
- Load files from cloud files (GDrive, Dropbox, iCloud)
- Load files from a custom format by providing a list of file extensions (pdf, svg, zip, etc.)
- Load files from multiple files optionally, supplying file extensions
- Load files from media (video & image only)
- Load files from audio only
- Load files from image only
- Load files from video only
- Load files from directory
- Load files from any
- Load files data immediately to memory (
Uint8List
); - Supports web;
- Supports desktop through go-flutter (MacOS, Windows, Linux)
If you have any feature that you want to see in this package, please feel free to issue a suggestion. 🎉
See the File Picker Wiki for every detail on about how to install, setup and use it.
Quick simple usage example:
FilePickerResult result = await FilePicker.platform.pickFiles();
if(result != null) {
File file = File(result.files.single.path);
}
FilePickerResult result = await FilePicker.platform.pickFiles(allowMultiple: true);
if(result != null) {
List<File> files = result.paths.map((path) => File(path)).toList();
}
FilePickerResult result = await FilePicker.platform.pickFiles(
type: FileType.custom,
allowedExtensions: ['jpg', 'pdf', 'doc'],
);
FilePickerResult result = await FilePicker.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);
}
For full usage details refer to the Wiki above.
For help getting started with Flutter, view our online documentation.
For help on editing plugin code, view the documentation.