我想以JSON格式转换.xls
文件我使用xls-to-json
模块。
当我使用xlsx-to-json
模块时,它工作正常。但我不想阅读.xlsx file
。它给我一个错误:
TypeError: Cannot set property length of [object Object] which has only a getter.
我无法找到错误。是否有任何其他模块可以在JSON中转换.xls文件。
here is my code :
var node_xj = require("xls-to-json");
app.get('/file',function(req,res){
node_xj({
input: 'file.xls', // input xls
output: "output.json", // output json
sheet: "sheetname", // specific sheetname
}, function(err, result) {
if(err) {
console.error(err);
} else {
console.log(result);
}
});
});
答案 0 :(得分:0)
该软件包仅支持MS Excel使用的新xlsx格式。
最简单的选择是将文件保存为逗号分隔的csv文件(因为大多数软件都提供该格式)并使用csv到json转换器。
这里有一个很好的 - https://www.npmjs.com/package/csv
答案 1 :(得分:0)
您可以使用path模块获取file extension
,如果文件扩展名匹配,则执行解析代码
var node_xj = require("xls-to-json");
var path = require('path');
app.get('/file', function(req, res) {
//Give file name with extension e.g, file.xls
if (path.extname('file.xls') === '.xls') {
node_xj({
input: 'file.xls', // input xls
output: "output.json", // output json
sheet: "sheetname", // specific sheetname
}, function(err, result) {
if (err) {
console.error(err);
} else {
console.log(result);
}
});
}
});
<强> 更新 强>
这不是此模块的问题,但问题来自第三方模块依赖xlsjs
这里是您可以看到更新的opened issue
答案 2 :(得分:0)
您可以使用此module,请注意我是作者。
答案 3 :(得分:0)
xls-to-json-lc的软件包已合并到xlsx-to-json-lc的软件包中。只需对两种类型的扩展都使用Xlsx,就可以正常工作。