FileReaderSync:readAsText() 方法

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.

备注: 此特性仅在 Web Worker(不包括 Service Worker)中可用。

FileReaderSync 接口的 readAsText() 方法允许以同步方式读取 FileBlob 对象并将其转换为字符串。此接口仅在 worker可用,因为它支持同步 I/O,可能导致潜在的阻塞。

语法

js
readAsText(blob)
readAsText(blob, encoding)

参数

blob

要读取的 FileBlob 对象。

encoding 可选

此可选参数指定要使用的编码(例如 iso-8859-1UTF-8)。如果不存在,该方法将对其应用检测算法以确定其编码。

返回值

表示输入数据的字符串。

异常

此方法可能引发以下异常:

NotFoundError DOMException

如果无法找到 DOM FileBlob 对象表示的资源,例如因为它已被删除,则抛出该异常。

SecurityError DOMException

如果检测到以下有问题的情况之一,则抛出该异常:

  • 资源已被第三方修改;
  • 同时执行太多读取;
  • 资源指向的文件对于从 Web 上使用来说是不安全的(比如它是系统文件)。
NotReadableError DOMException

如果由于权限问题(例如并发锁)而无法读取资源,则抛出该异常。

EncodingError DOMException

如果资源是 data URL 并且超出每个浏览器定义的限制长度,则抛出该异常。

规范

Specification
File API
# readAsTextSync

浏览器兼容性

BCD tables only load in the browser

参见