搜尋套件、儲存庫與 APP 分類

套件詳情v4.2.0

file_picker_web

檔案選擇外掛程式之Web平台實作,提供瀏覽器檔案選擇、檔案串流與檔案載入功能。

Web
近 30 天下載
121萬
喜歡數
10
Pub 分數
150

安裝套件

flutter pub add file_picker_web

套件介紹

根據套件公開資料產生的選型評估,僅供參考。

file_picker_web 套件為 file_picker 插件提供了一個 Web 平台的實作,讓使用者能透過瀏覽器介面選擇檔案。它支援直接從瀏覽器串流傳輸檔案資料,並輕鬆將檔案載入應用程式中。此套件專為 Flutter Web 應用的無縫整合而設計,確保在不同瀏覽器中具有一致的檔案處理體驗。該套件屬於更廣泛的 file_picker 生態系統的一部分,專注於 Web 特定功能,例如檔案輸入處理與基於串流的讀取。

適用情境

  • 基於Web的檔案上傳
  • 串流檔案內容,無需完整下載
  • 在網頁表單中整合檔案選擇
  • 正在加載檔案以進行處理或預覽
  • 在Web應用程式中支援多種檔案類型

主要特色

  • 瀏覽器檔案選擇
  • 檔案串流支援
  • 跨瀏覽器相容性
  • 輕量級網路整合
  • 用於檔案載入的簡單 API

適合對象

  • Flutter Web 應用需要檔案輸入
  • 需要即時檔案串流的應用程式
  • 在網頁上使用 file_picker 插件的開發者
  • 涉及檔案預覽或上傳的項目
  • 針對桌面和行動瀏覽器的網頁應用

使用建議

  • 需要 file_picker 核心套件
  • 僅限Web平台
  • 可能需要處理瀏覽器權限
  • 依賴於瀏覽器的檔案輸入功能
  • 無原生檔案系統存取

原始 README

以下為關聯原始碼儲存庫的 README 原文快照,最新內容請造訪原始碼儲存庫。

File Picker

pub package CI pipeline status GitHub issues License Awesome Flutter

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.

Packages

Package Pub Description
file_picker pub The main package. Add this to your app, it pulls in the right platform implementation automatically.
file_picker_platform_interface pub The shared interface and data contracts (PlatformFile, FileType, platform option classes) every implementation builds on.
file_picker_darwin pub iOS and macOS implementation.
android_file_picker pub Android implementation, including Storage Access Framework (SAF) support.
file_picker_linux pub Linux implementation, using GTK3 and XDG Desktop Portals.
windows_file_picker pub Windows implementation, using the Win32 COM APIs.
file_picker_web pub 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 = await FilePicker.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).

Documentation

Contributing

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.

所屬分類

依賴

依賴清單 5 項

原始碼儲存庫

使用此套件的專案

暫無相關資料。

所在榜單