node.js如何打开/读取包含密码的XLSX文件

时间:2016-07-14 04:16:25

标签: javascript node.js excel xlsx

我目前使用此XLSX工具打开文件但失败了。

XLSX工具:https://github.com/SheetJS/js-xlsx

我想打开一个包含密码的文件,这个工具提供了一个密码变量,但我无法成功使用,我误解了什么?

var excel = require('xlsx');
filename='./public/test.xlsx';
var workbook = excel.readFile(filename,{password:'123'});

服务器返回错误500

已成功打开已测试的文件,但不包含密码。

*可能不支持该工具。还有其他工具或其他方法吗?

2 个答案:

答案 0 :(得分:0)

我的回答是帮助您回答有关是否有其他工具或方法来打开受密码保护的xlsx文件的问题。我刚刚介绍了另一个名为xlsx-populate的节点包。此程序包允许您打开受密码保护的xlsx文件。

XlsxPopulate
.fromFileAsync(__dirname + "/../data/report.xlsx", {password: "password"})
.then(workbook => {
  //do something with the workbook like convert it to csv.
  fs.writeFile(__dirname + "/../data/report.csv", csv, function(err) {
    if(err) {
    return console.log(err);
}

答案 1 :(得分:0)

面对同样的问题。如此处的讨论:https://github.com/SheetJS/sheetjs/issues/774不幸的是,这不是一种选择,并且可能在不久的将来不会实现。一种解决方法是将文件另存为..并删除密码保护。