node.js blob转xlsx
时间: 2023-09-24 10:09:50 浏览: 47
可以使用第三方库 `xlsx` 来实现将 Blob 对象转换为 xlsx 文件。
首先需要安装 `xlsx` 库:
```
npm install xlsx
```
然后可以使用以下代码将 Blob 对象转换为 xlsx 文件:
```javascript
const XLSX = require('xlsx');
// 读取 Blob 对象
const reader = new FileReader();
reader.readAsArrayBuffer(blob);
reader.onload = () => {
const fileData = reader.result;
// 将 ArrayBuffer 转换为二进制字符串
const data = new Uint8Array(fileData);
const arr = new Array();
for (let i = 0; i != data.length; ++i) arr[i] = String.fromCharCode(data[i]);
const bstr = arr.join("");
// 解析二进制字符串为 workbook 对象
const workbook = XLSX.read(bstr, { type: "binary" });
// 将 workbook 对象转换为 xlsx 文件
XLSX.writeFile(workbook, "data.xlsx");
};
```
这里的 `blob` 是一个 Blob 对象,可以通过 AJAX 等方式从服务器获取。以上代码将 `blob` 对象转换为 ArrayBuffer,再将 ArrayBuffer 转换为二进制字符串,最后使用 `XLSX.read` 方法将二进制字符串解析为 workbook 对象,再使用 `XLSX.writeFile` 方法将 workbook 对象转换为 xlsx 文件并保存到本地。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)