概览
“概览”章节功能完备的文件系统插件,用于读写及管理文件与目录
从 requestFileSystem() 以及下方列出的其他核心方法。
平台支持
标题为“平台支持”的部分| 平台 | 支持 | 备注 |
|---|---|---|
| iOS | 是 | 原生 |
| Android | 是 | 原生 |
| Web 端 | 是 | 浏览器存储 API |
核心功能
标题为“核心功能”的章节requestFileSystem- 请求文件系统。resolveLocalFileSystemURL- 将文件 URL 解析为条目。getFile- 获取文件条目。getDirectory- 获取目录项。
公开 API
标题为“公开 API”的章节| 方法 | 描述 |
|---|---|
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 | 临时缓存数据,操作系统可能会清除。 |
EXTERNAL | Android 外部存储根目录,例如 SD 卡或共享外部存储。 |
EXTERNAL_STORAGE | Android 外部存储数据目录。 |
APPLICATION | 只读的应用 bundle 或 assets 目录。 |
| 值 | 使用 |
|---|---|
utf8 | UTF-8 文本。 |
ascii | ASCII 文本。 |
utf16 | UTF-16 文本。 |
文件错误代码
标题为“文件错误代码”的章节| 值 | Code | 含义 |
|---|---|---|
NOT_FOUND_ERR | 1 | 未找到文件或目录。 |
SECURITY_ERR | 2 | 操作被安全规则或权限拦截。 |
ABORT_ERR | 3 | 操作已中止。 |
NOT_READABLE_ERR | 4 | 无法读取文件或目录。 |
ENCODING_ERR | 5 | 编码无效或不受支持。 |
NO_MODIFICATION_ALLOWED_ERR | 6 | 无法修改目标。 |
INVALID_STATE_ERR | 7 | 对象当前状态无法执行该操作。 |
SYNTAX_ERR | 8 | 路径或输入语法无效。 |
INVALID_MODIFICATION_ERR | 9 | 目标不支持所请求的更改。 |
QUOTA_EXCEEDED_ERR | 10 | 已超出存储配额。 |
TYPE_MISMATCH_ERR | 11 | 值类型与预期类型不匹配。 |
PATH_EXISTS_ERR | 12 | 目标路径已存在。 |
单一事实来源
标题为“单一事实来源”的部分此参考文档同步自 src/definitions.ts 中的 capacitor-file.
从 @capgo/capacitor-file 继续
标题为“从 @capgo/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. 的原生能力