如何附加到nodejs中的excel文件

how to append to a excel file in nodejs

我目前正在开发一种表单,该表单将接受用户输入并将其添加到 excel sheet 的一行中,截至目前,我已经设法使 excel sheet 使用第 3 方插件(具体来说是 node-xls)。 如果我想向 excel 添加另一行,就会出现问题,它会删除旧条目并添加新条目,而不是将数据附加到下一行。

尝试读取 excel 然后连接缓冲区并再次写入文件,但事实证明它正在破坏文件并使其无法使用。

如何将数据附加到 excel sheet 的末尾?我是 nodejs 和缓冲区的新手

var fs = require('fs');
var NodeXls = require('node-xls');
var tool = new NodeXls();
var xls = tool.json2xls({firstName: "arjun", lastName: "u", dob:"12/3/2008"}, {order:["firstName", "lastName", "dob"]});
fs.appendFile('output.xlsx', xls, 'binary', function(err){
if(err)
  alert("File is readOnly or is being used by another application,  please close it and continue!");
});

你用过 Exceljs 吗?它有助于读取、操作电子表格数据和样式并将其写入 XLSX 和 JSON.

查看下方link了解详情

https://www.npmjs.com/package/exceljs

您的添加行或追加行问题已在此处解决:

worksheet.addRow({id: 1, name: 'John Doe', dob: new Date(1970,1,1)});

var rowValues = [];
rowValues[1] = 4;
rowValues[5] = 'Kyle';
rowValues[9] = new Date();
worksheet.addRow(rowValues);

// Add an array of rows 
var rows = [
    [5,'Bob',new Date()], // row by array 
    {id:6, name: 'Barbara', dob: new Date()}
];
worksheet.addRows(rows);

安装 npm 模块 'spread_sheet',它肯定会解决从任何 sheet.

添加行以及从 spreadsheet 读取行的问题

一次添加一行

var spread_sheet = require('spread_sheet');
var row = "1,2,Jack,Pirate";
var filePath = '/home/Pranjal/Desktop/test.xlsx';
var sheetName = "Sheet1";

spread_sheet.addRow(row,filePath,sheetName,function(err,result){
    console.log(err,result)
})