如何读取Blob对象中的文本内容?

2,500 阅读1分钟

Blob对象是只读、表示原始数据的类文件对象,在前端常常用于处理下载文件流。普通方法并不能解析Blod对象中的文本内容。如果想要解决此问题,必须通过特殊的处理方法才行。

构造一个Blob对象

const MY_BLOB = new Blob(['君不见黄河之水天上来,奔流到海不复回'],{type:'application/json'})

//PS: Blob对象构造时的第一该参数为数组或类数组对象,第二个参数用于指定Blob对象的MIME类型(还有第三个参数,此处不做赘述)

在浏览器中直接查看Blob对象

直接查看时,只能看到其大小与MIME: 在这里插入图片描述

方法一:利用FileReader方法

const  READER = new FileReader();
READER.addEventListener("loadend", function(e) {
	console.log(e.target.result)// 此处输出结果
});
READER.readAsText(MY_BLOB);

方法二:利用Response对象

const TEXT = await (new Response(MY_BLOB)).text()

-----End------