npm xlsx库错误:不支持的格式|#,###0000000|-Excel自定义数字格式分析错误



我正在尝试解析一个数字格式为"7242.1661445"的xlsx文件。在Microsoft excel中检查时,我发现该单元格为自定义数字格式"#,###.000000"。

我正在使用xlsx库分析此文件https://www.npmjs.com/package/xlsx.我的运行时是Node.js.

但是,库向我抛出了一个错误,不支持的格式|#,###0000000|

我尝试了其他几个库,但仍然会出错。解析时可以将任何参数作为选项传递吗?我做错了什么?这是一个完全的依赖性问题吗?我有什么选择?javascript平台对excel文件解析的支持不够好吗?

我正在运行以下代码:

var workbook = XLSX.readFile('filePath',{raw:true,WTF:true});
var worksheet = workbook.Sheets[workbook.SheetNames[0]];
console.log('Cell A1 value', worksheet['A1']);

如果省略WTF参数,该单元格将解析该值而不会引发错误。

现在,您需要验证这些值是否正确转换为数字。

例如

var workbook = XLSX.readFile('customformat.xlsx', {raw: true })
var worksheet = workbook.Sheets[workbook.SheetNames[0]];
console.log('Cell A1 value', worksheet['A1']);

来自XLSX文档:

WTF主要用于开发。默认情况下,解析器将抑制单个工作表上的读取错误,允许您从正确解析的工作表中读取。设置WTF:1将强制抛出这些错误。