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

浏览器兼容性

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
readAsText

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support
No support
No support

参见