[英]Use XLSX.js with base64
嘗試做
var work = XLSX.readFile("D:\\sched.xls"); //var XLSX = <XLSX>require('xlsx');
但是我相信我遇到了本期中描述的問題。
https://github.com/stephen-hardy/xlsx.js/issues/11
開始編輯發現我實際上正在使用與發現問題所在的庫不同的庫。
https://github.com/SheetJS/js-xlsx/issues/135編輯結束
解決方法是“讀取具有base64編碼的文件,然后將其傳遞給xlsx。”
var fileRead = fs.readFileSync("D:\\sched.xls");
var base64 = fileRead.toString('base64');
//The workaround seems to be talking about some xlsx function?
//even .read doesn't seem to be thing based on my typescript binding.
var workbook = XLSX.read(base64); //to use read switch:
// var XLSX = <XLSX>require('xlsx');
// var XLSX = require('xlsx')
所以我很確定我已經使用base64編碼讀取了文件,如何將其傳遞給xlsx.js
您需要使用支持“ .xls”格式的Excel閱讀器。 例如, excel-parser庫同時支持“ .xls”和“ .xlsx”格式。
我不知道您使用的是什么庫,但是給定的名稱是XLSX
,我希望它只能解析現代的“ .xlsx”格式,而不能解析較舊的“ .xls”格式(並且您的文件具有“ .xls”延期)。
var excelParser = require('excel-parser');
excelParser.worksheets({
inFile: 'D:\\sched.xls'
}, function(err, worksheets){
if(err) {
console.error(err);
}
console.log(worksheets);
});
將以如下格式提供輸出:
[
['ID', 'Name', 'Location'],
['1757491', 'Travis', 'Philadelphia'],
['75525', 'Steve', 'UK']
]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.