file_picker_web 패키지는 file_picker 플러그인을 위한 웹 플랫폼 구현을 제공하여 브라우저 인터페이스를 통해 파일을 선택할 수 있도록 합니다. 브라우저에서 직접 파일 데이터를 스트리밍하고 애플리케이션에 쉽게 파일을 로드할 수 있도록 지원합니다. Flutter 웹 앱에서 원활한 통합을 위해 설계되었으며, 다양한 브라우저 간 일관된 파일 처리를 보장합니다. 이 패키지는 더 넓은 file_picker 생태계의 일부로, 파일 입력 처리 및 스트림 기반 읽기와 같은 웹 전용 기능에 중점을 두고 있습니다.
사용 사례
웹 기반 파일 업로드
전체 다운로드 없이 파일 콘텐츠 스트리밍
웹 폼에서 파일 선택 통합
처리 또는 미리 보기용 파일을 로드 중입니다
웹 앱에서 여러 파일 형식 지원
주요 기능
브라우저 파일 선택
파일 스트리밍 지원
크로스 브라우저 호환성
경량 웹 통합
파일 로드를 위한 간단한 API
적합한 대상
파일 입력이 필요한 플러터 웹 애플리케이션
실시간 파일 스트리밍이 필요한 앱
웹에서 file_picker 플러그인을 사용하는 개발자
파일 미리보기 또는 업로드를 포함하는 프로젝트
데스크톱 및 모바일 브라우저를 대상으로 하는 웹 앱
고려 사항
file_picker 핵심 패키지가 필요합니다
웹 플랫폼에만 제한됨
브라우저 권한 처리가 필요할 수 있습니다
브라우저의 파일 입력 기능에 의존합니다
네이티브 파일 시스템 접근 없음
원본 README
연결된 소스 저장소의 README 원문 스냅샷입니다. 최신 내용은 저장소에서 확인하세요.
File Picker
A Flutter plugin that lets you use the native file explorer to pick single or multiple files, with extension filtering, directory selection, and save-file dialogs, across Android, iOS, Linux, macOS, Windows, and Web.
This repository is a Melos workspace hosting file_picker as a federated plugin: a single cross-platform API package on top of one implementation package per platform, all versioned and published independently.
Web implementation, including Wasm compilation support.
Almost all apps should only ever depend on file_picker directly. The platform packages are pulled in transitively and registered automatically by Flutter's plugin system; you only reach for one of them directly if you need a platform-specific API that isn't exposed on the shared facade (for example FilePickerDarwin.skipEntitlementsChecks() on macOS).
Quick start
dependencies:file_picker:^13.0.0
import'package:file_picker/file_picker.dart';
final file = awaitFilePicker.pickFile();
if (file != null) {
print(file.name);
print(await file.length()); // Returns Future<int?> (or use file.lengthSync())
}
See packages/file_picker/README.md for the full feature list, platform compatibility chart, and more usage examples (multiple files, extension filters, directory picking, save-file dialogs).
Migration
Upgrading to v13? See the Migrating to v13 Guide for details on PlatformFile.length() returning Future<int?> and the removal of legacy v12-deprecated parameters.
Upgrading from pre-v12? See the Migrating to v12 Guide for the federated architecture changes (FilePicker.pickFiles() returning List<PlatformFile>, platform options, and streaming).
Contributions are welcome. Please read CONTRIBUTING.md before opening a pull request, it covers testing requirements, versioning, and changelog conventions for this workspace.
To work on this repository locally:
dart pub global activate melos
melos bootstrap
melos run analyze # flutter analyze across every package
melos run test# flutter test across every package
Each package keeps its own pubspec.yaml and CHANGELOG.md and is released independently, only the package(s) you actually changed need a version bump.
Credits
file_picker was created and maintained by Miguel Ruivo, starting in 2018, growing it from a single Android/iOS plugin into the federated, cross-platform package it is today. This repository continues that work under new ownership, built entirely on the foundation of his years of effort.
Thank you, Miguel.
License
MIT, see LICENSE. Every package in this repository is released under the same license.