求推荐可读写excel表格的Nodejs包
求推荐可读写excel表格的Nodejs包
最近有个这类需求,需要去读取excel 求高手们推荐啊…
刚刚也有人推荐了node-office这东西,貌似一路安装下去依次还要安装python,visual_studio_2010 …目前visual_studio_2010还没下完…2.5G 汗! 不知兄台有没有用过node-office,这样的话不知以后放到非windows服务器上的时候肿么办呢
求推荐可读写Excel表格的Node.js包
最近有个需求,需要处理Excel文件的读取和写入。求大家推荐一些好用的Node.js库来完成这项工作。
推荐的Node.js包
在这里,我推荐两个非常流行的Node.js库,它们可以帮助你轻松地读取和写入Excel文件:
- xlsx
- exceljs
这两个库都支持多种功能,并且不需要额外的软件依赖(如Python或Visual Studio)。
示例代码
1. 使用 xlsx 库
首先,你需要安装xlsx
库:
npm install xlsx
然后,你可以使用以下代码来读取一个Excel文件:
const XLSX = require('xlsx');
// 读取Excel文件
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);
如果你想写入一个新的Excel文件,可以使用以下代码:
const XLSX = require('xlsx');
// 创建数据
const data = [
{ name: 'John', age: 30 },
{ name: 'Jane', age: 25 }
];
// 将JSON数据转换为工作表
const worksheet = XLSX.utils.json_to_sheet(data);
// 创建新的工作簿并添加工作表
const workbook = XLSX.utils.book_new();
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
// 写入文件
XLSX.writeFile(workbook, 'output.xlsx');
2. 使用 exceljs 库
首先,你需要安装exceljs
库:
npm install exceljs
读取Excel文件的示例代码:
const ExcelJS = require('exceljs');
// 读取Excel文件
const workbook = new ExcelJS.Workbook();
workbook.xlsx.readFile('example.xlsx')
.then(() => {
const worksheet = workbook.getWorksheet(1);
worksheet.eachRow((row, rowNumber) => {
console.log(`Row ${rowNumber}: ${JSON.stringify(row.values)}`);
});
});
写入Excel文件的示例代码:
const ExcelJS = require('exceljs');
// 创建新的工作簿
const workbook = new ExcelJS.Workbook();
// 添加新的工作表
const worksheet = workbook.addWorksheet('Sheet 1');
// 添加数据
worksheet.columns = [
{ header: 'Name', key: 'name', width: 10 },
{ header: 'Age', key: 'age', width: 10 }
];
worksheet.addRow({ name: 'John', age: 30 });
worksheet.addRow({ name: 'Jane', age: 25 });
// 写入文件
workbook.xlsx.writeFile('output.xlsx');
以上就是两个常用的Node.js库,希望对你的需求有所帮助!
xlsx是个zip文件可以直接解压读取。xls就不清楚了。
node-office
刚刚也有人推荐了这东西,貌似一路安装下去依次还要安装python,visual_studio_2010 …目前visual_studio_2010还没下完…2.5G 汗! 不知兄台有没有用过node-office,这样的话不知以后放到非windows服务器上的时候肿么办呢
回家用mac系统安装node-office 一路顺利就是最后出了几个警告,可是当我运行程序总是报出一个 execvp: 没有那个文件或目录 的错,这个绝对不是xls文件找不到,实在没有办法了
测试成功 希望能够分享一下
这个你可以把excel文件转化成csv文件,然后用line-reader(https://github.com/nickewing/line-reader) 这个包读取,很方便的,也很快!我之前用过……
多谢~那个合并多列的话好用吗,我现在用的node-xlsx 不能合并列也不能处理xls
line-reader比较简单,只是按行读取记录,至于合并估计要自己写代码了……网上的包倒是很多,不过都是参差不齐,说不定本来就有Bug,如果能自己写那肯定最好了!
冒个泡file-uploader这东西上传文件不错
web端 ajaxfileupload 不错。
最近做的项目有涉及读写excel 同事用的是python读写 node调用py python有很成熟的框架去做这些事
冒个泡,3d打印这个是中国首个设计师的app store。我做的。大家有空去逛逛。
冒个泡,3d打印这个是中国首个设计师的app store。我做的。大家有空去逛逛。网址:http://www.513dp.com/
求将数据写入excel或者csv乱码问题的方法!!
求教,node-xlsx写文件,包含中文的时候会出现乱码,有何解法?
xlsx读写,just for look look https://github.com/lodengo/xlsx
对于读写 Excel 表格的需求,我推荐使用 xlsx
这个 Node.js 包。它不仅功能强大、易于上手,而且不需要安装额外的依赖,比如 Python 或 Visual Studio。以下是一些基本的操作示例。
安装
首先你需要通过 npm 安装 xlsx
:
npm install xlsx
示例代码
读取 Excel 文件
const XLSX = require('xlsx');
// 读取文件
const workbook = XLSX.readFile('example.xlsx');
// 获取第一个工作表的名称
const sheetName = workbook.SheetNames[0];
// 获取指定的工作表
const worksheet = workbook.Sheets[sheetName];
// 将工作表转换为 JSON 对象数组
const data = XLSX.utils.sheet_to_json(worksheet);
console.log(data);
写入 Excel 文件
const XLSX = require('xlsx');
// 创建一个空的工作簿
const workbook = XLSX.utils.book_new();
// 示例数据
const data = [
{ name: 'Alice', age: 24 },
{ name: 'Bob', age: 30 }
];
// 将数据转换为工作表
const worksheet = XLSX.utils.json_to_sheet(data);
// 添加工作表到工作簿
XLSX.utils.book_append_sheet(workbook, worksheet, 'Sheet1');
// 写入文件
XLSX.writeFile(workbook, 'output.xlsx');
总结
xlsx
是一个非常强大的工具,适用于各种规模的 Excel 文件读写任务。它避免了复杂的依赖关系,使得部署变得更加容易。希望这些示例能够帮助你快速上手。
如果你有更多复杂的需求或遇到任何问题,可以查阅其官方文档获取更多信息:xlsx GitHub