跳转到正文

@capgo/capacitor-file

功能完备的文件系统插件,用于读写及管理文件与目录

功能完备的文件系统插件,用于读写及管理文件与目录

从 requestFileSystem() 以及下方列出的其他核心方法。

平台支持备注
iOS是原生
Android是原生
Web 端是浏览器存储 API
  • requestFileSystem - 请求文件系统。
  • resolveLocalFileSystemURL - 将文件 URL 解析为条目。
  • getFile - 获取文件条目。
  • getDirectory - 获取目录项。
方法描述
requestFileSystem请求文件系统。
resolveLocalFileSystemURL将文件 URL 解析为条目。
getFile获取文件条目。
getDirectory获取目录项。
readFile以文本或 base64 格式读取文件。
readAsDataURL以 data URL 格式读取文件(带 MIME 类型前缀的 base64)。
writeFile将数据写入文件。
appendFile向文件追加数据。
deleteFile删除文件。
mkdir创建目录。
rmdir删除目录。
readdir读取目录内容。
stat获取文件或目录的元数据。
getMetadata获取文件或目录的元数据。stat() 的别名。
rename重命名或移动文件或目录。
move移动文件或目录。rename() 的别名。
copy复制文件或目录。
exists检查文件或目录是否存在。
getUri获取文件的 URI。
truncate将文件截断为指定大小。
getDirectories获取所有已知的文件系统目录。
getFreeDiskSpace获取以字节为单位的可用磁盘空间。
addListener监听读取进度事件。
addListener监听写入进度事件。
removeAllListeners移除所有事件监听器。
getPluginVersion获取插件版本。
checkPermissions检查文件操作的当前权限状态。在 Android 上,这会检查外部存储权限。在 iOS 和 Web 上,由于无需特殊权限,始终返回 'granted'。
requestPermissions请求文件操作的权限。在 Android 上,这会请求访问应用私有目录之外文件所需的外部存储权限。在 iOS 和 Web 上,由于无需特殊权限,始终返回 'granted'。

在选择存储位置、写入编码文本或处理文件错误时使用这些值。

值用户会发现
DOCUMENTS持久化的用户可见文档。在 Android 上,这映射到应用文件目录。
DATA持久化的私有应用数据。
LIBRARY持久化的非用户可见应用数据。在 Android 上,这映射到应用文件目录。
CACHE临时缓存数据,操作系统可能会清除。
EXTERNALAndroid 外部存储根目录,例如 SD 卡或共享外部存储。
EXTERNAL_STORAGEAndroid 外部存储数据目录。
APPLICATION只读的应用 bundle 或 assets 目录。
值使用
utf8UTF-8 文本。
asciiASCII 文本。
utf16UTF-16 文本。
值Code含义
NOT_FOUND_ERR1未找到文件或目录。
SECURITY_ERR2操作被安全规则或权限拦截。
ABORT_ERR3操作已中止。
NOT_READABLE_ERR4无法读取文件或目录。
ENCODING_ERR5编码无效或不受支持。
NO_MODIFICATION_ALLOWED_ERR6无法修改目标。
INVALID_STATE_ERR7对象当前状态无法执行该操作。
SYNTAX_ERR8路径或输入语法无效。
INVALID_MODIFICATION_ERR9目标不支持所请求的更改。
QUOTA_EXCEEDED_ERR10已超出存储配额。
TYPE_MISMATCH_ERR11值类型与预期类型不匹配。
PATH_EXISTS_ERR12目标路径已存在。

此参考文档同步自 src/definitions.ts 中的 capacitor-file.

如果你正在使用 @capgo/capacitor-file 要规划存储和文件处理,请将其与 使用 @capgo/capacitor-file 原生能力请参阅《使用 @capgo/capacitor-file》, @capgo/capacitor-data-storage-sqlite 关于 @capgo/capacitor-data-storage-sqlite 中的实现细节, 使用 @capgo/capacitor-data-storage-sqlite 关于使用 @capgo/capacitor-data-storage-sqlite 的原生能力, @capgo/capacitor-uploader 关于 @capgo/capacitor-uploader 中的实现细节,以及 使用 @capgo/capacitor-uploader 关于使用 @capgo/capacitor-uploader. 的原生能力