二进制数据流转换成Blob对象
时间: 2023-09-05 18:15:15 浏览: 109
将二进制数据流转换成Blob对象,可以使用Blob构造函数。Blob构造函数的第一个参数是一个数组,它包含了要放入Blob对象中的数据。第二个参数是一个对象,用于指定Blob对象的类型(MIME类型)。
以下是一个将二进制数据流转换成Blob对象的示例代码:
```javascript
// 假设 binaryData 是一个二进制数据流
const blob = new Blob([binaryData], { type: 'application/octet-stream' });
```
在上面的代码中,我们使用了`application/octet-stream`作为Blob对象的MIME类型,这是一个通用的二进制文件类型。您可以根据实际情况选择不同的MIME类型。
相关问题
methods: { downloadExcel() { //创建一个工作簿 const wb = XLSX.utils.book_new(); //创建一个工作表 const ws = XLSX.utils.json_to_sheet([{ name: 'John', age: 28 },{ name: 'Jane', age: 32 }]); //将工作表添加到工作簿中 XLSX.utils.book_append_sheet(wb, ws, 'Sheet1'); //将工作簿转换成二进制数据流 const wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' }); //将二进制数据流转换成Blob对象 const blob = new Blob([s2ab(wbout)], { type: 'application/octet-stream' }); //使用file-saver库将文件保存到本地 FileSaver.saveAs(blob, 'example.xlsx'); }} 怎么改变表头数据
要改变表头数据,只需要在 `XLSX.utils.json_to_sheet` 方法中设置每个对象的属性名即可。例如,将 `{ name: 'John', age: 28 },{ name: 'Jane', age: 32 }` 改为 `{ Name: 'John', Age: 28 },{ Name: 'Jane', Age: 32 }`,则表头数据会变为 "Name" 和 "Age"。
修改后的代码如下:
```javascript
methods: {
downloadExcel() {
//创建一个工作簿
const wb = XLSX.utils.book_new();
//创建一个工作表,并设置表头数据
const ws = XLSX.utils.json_to_sheet([{ Name: 'John', Age: 28 },{ Name: 'Jane', Age: 32 }], { header: ['Name', 'Age'] });
//将工作表添加到工作簿中
XLSX.utils.book_append_sheet(wb, ws, 'Sheet1');
//将工作簿转换成二进制数据流
const wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' });
//将二进制数据流转换成Blob对象
const blob = new Blob([s2ab(wbout)], { type: 'application/octet-stream' });
//使用file-saver库将文件保存到本地
FileSaver.saveAs(blob, 'example.xlsx');
}
}
```
vue 二进制数据流转换blob对象(转化成前端可识别的图片)
要将二进制数据流转换成前端可识别的图片,可以使用Blob对象。Blob对象表示不可变、原始数据的类文件对象,可以被读取为文本或二进制数据。
下面是将二进制数据流转换成Blob对象并显示为图片的示例代码:
```javascript
// 假设二进制数据流为 response.data
// 假设图片格式为 image/png
// 将二进制数据流转换成 Blob 对象
const blob = new Blob([response.data], { type: 'image/png' });
// 创建图片元素
const img = document.createElement('img');
// 将 Blob 对象转换成 URL
const imgUrl = URL.createObjectURL(blob);
// 设置图片元素的 src 属性
img.src = imgUrl;
// 将图片元素添加到页面上
document.body.appendChild(img);
```
这段代码中,我们先将二进制数据流转换成Blob对象,然后使用URL.createObjectURL方法将Blob对象转换成URL,最后将URL设置为图片元素的src属性,即可在页面上显示图片。
阅读全文