FileSystemFileHandle: getFile() 方法

Baseline 已广泛支持

此功能已成熟,并可在许多设备和浏览器版本上运行。自 2023 年 3 月以来,它已在各种浏览器中可用。

安全上下文: 此功能仅在安全上下文(HTTPS)中可用,且支持此功能的浏览器数量有限。

注意:此功能在 Web Workers 中可用。

getFile() 方法是 FileSystemFileHandle 接口的一部分,它返回一个 Promise,该 Promise 会解析为一个 File 对象,该对象代表了由该句柄表示的磁盘上的状态。

如果在此方法调用后,磁盘上的文件发生更改或被删除,则返回的 File 对象可能将不再可读。

语法

js
getFile()

参数

无。

返回值

一个 Promise,解析为一个 File 对象。

异常

NotAllowedError DOMException

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

NotFoundError DOMException

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

示例

以下异步函数显示一个文件选择器,一旦选择了一个文件,就会使用 getFile() 方法检索内容。

js
async function getTheFile() {
  // open file picker
  const [fileHandle] = await window.showOpenFilePicker(pickerOpts);

  // get file contents
  const fileData = await fileHandle.getFile();
}

规范

规范
文件系统
# api-filesystemfilehandle-getfile

浏览器兼容性

另见