FileReader: readAsText() 方法

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

readAsText()FileReader 接口的一种方法,用于读取指定 BlobFile 的内容。读取操作完成后,readyState 属性将变为 DONEloadend 事件将被触发,而 result 属性将包含文件内容的文本字符串。

注意:Blob.text() 方法是用于将文件读取为文本的较新基于 Promise 的 API。

注意:此方法会将整个文件内容加载到内存中,不适用于大型文件。对于大型文件,建议使用 readAsArrayBuffer()

语法

js
readAsText(blob)
readAsText(blob, encoding)

参数

blob

要从中读取的 BlobFile

encoding 可选

一个字符串,指定用于返回数据的编码。默认情况下,如果未指定此参数,则假定为 UTF-8。

返回值

无(undefined)。

示例

HTML

html
<input type="file" onchange="previewFile()" /><br />
<p class="content"></p>

JavaScript

js
function previewFile() {
  const content = document.querySelector(".content");
  const [file] = document.querySelector("input[type=file]").files;
  const reader = new FileReader();

  reader.addEventListener(
    "load",
    () => {
      // this will then display a text file
      content.innerText = reader.result;
    },
    false,
  );

  if (file) {
    reader.readAsText(file);
  }
}

结果

规范

规范
文件 API
# readAsDataText

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅