FileSystemFileHandle:getFile() 方法

Baseline 2023

Newly available

Since March 2023, this feature works across the latest devices and browser versions. This feature might not work in older devices or browsers.

安全上下文: 此项功能仅在一些支持的浏览器安全上下文(HTTPS)中可用。

备注: 此特性在 Web Worker 中可用。

FileSystemFileHandle 接口的 getFile() 方法返回一个 Promise 对象,可兑现一个 File 对象,其表示磁盘上句柄所代表的条目的状态。

如果磁盘上的文件在调用了此方法后发生了更改或是被移除,那么返回的 File 对象可能会不再可读。

语法

js
getFile()

参数

无。

返回值

一个 Promise 对象,可兑现一个 File 对象。

异常

NotAllowedError DOMException

如果可读(read)模式下的 PermissionStatus.state 不是 granted ,则抛出此异常。

NotFoundError DOMException

如果未找到当前条目,则抛出该异常。

示例

下面的异步函数可以显示一个文件选择器,并在选择了文件时使用 getFile() 方法取得内容。

js
async function getTheFile() {
  // 打开文件选择器
  const [fileHandle] = await window.showOpenFilePicker(pickerOpts);

  // 获取文件内容
  const fileData = await fileHandle.getFile();
}

规范

Specification
File System Standard
# api-filesystemfilehandle-getfile

浏览器兼容性

BCD tables only load in the browser

参见