nodejs 使用xlsx包读取文件流binary并已utf8格式输出的示例
时间: 2023-09-17 09:12:48 浏览: 86
以下是使用 `xlsx` 包读取二进制文件流并输出为 `utf8` 格式的示例代码:
```javascript
const fs = require('fs');
const xlsx = require('xlsx');
// 读取二进制文件流
const file = fs.readFileSync('example.xlsx');
// 将二进制文件流转换为 workbook 对象
const workbook = xlsx.read(file, { type: 'buffer' });
// 获取第一个工作表
const sheetName = workbook.SheetNames[0];
const worksheet = workbook.Sheets[sheetName];
// 将工作表转换为 JSON 对象
const json = xlsx.utils.sheet_to_json(worksheet);
// 将 JSON 对象输出为 UTF-8 格式的字符串
const output = JSON.stringify(json, null, 2);
console.log(output);
```
在上面的示例中,我们使用 `fs` 模块读取二进制文件流,然后使用 `xlsx` 包将其转换为 `workbook` 对象。接着,我们从 `workbook` 对象中获取第一个工作表,并将其转换为 JSON 对象。最后,我们使用 `JSON.stringify` 方法将 JSON 对象输出为 UTF-8 格式的字符串。
相关问题
nodejs 使用xlsx包的示例
好的,以下是一个使用xlsx包读取Excel文件并输出数据的示例代码:
```javascript
const XLSX = require('xlsx');
const workbook = XLSX.readFile('example.xlsx');
const sheet_name_list = workbook.SheetNames;
const data = XLSX.utils.sheet_to_json(workbook.Sheets[sheet_name_list[0]]);
console.log(data);
```
其中,`require('xlsx')`导入了xlsx包。`XLSX.readFile('example.xlsx')`读取了名为`example.xlsx`的Excel文件,返回一个Workbook对象。`workbook.SheetNames`返回所有工作表的名称,`workbook.Sheets[sheet_name_list[0]]`返回第一个工作表的数据。`XLSX.utils.sheet_to_json`将工作表数据转换为JSON格式的数据,并返回一个数组。最后,`console.log(data)`将JSON格式的数据输出到控制台。
这个示例代码可以读取Excel文件的第一个工作表的数据,并将其输出到控制台。你可以根据需要进行修改,比如读取其他工作表的数据。
阅读全文