【发布时间】:2020-09-15 23:52:16
【问题描述】:
我正在使用Spreadsheet::BasicRead 从 Quickbooks 在线报告生成的电子表格中提取数据。一些单元格看起来像是带有前导美元符号的货币格式。但是,提取数据后,这些单元格中的数据如下所示:'20.00 €'。
我可以去掉这个符号,但想知道为什么会这样。我检查了 xlsx 文件中的 xml,并在其中看到了欧元符号(即使在电子表格中它显示为美元符号):
styles.xml:<styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><numFmts count="2"><numFmt numFmtId="165" formatCode="#,##0.00\ _€"/><numFmt numFmtId="166" formatCode=""$"* #,##0.00\ _€"/></numFmts>
有解决办法吗?也许我只需要一个更好的电子表格解析器?
【问题讨论】:
-
我将问题追溯到 Spreadsheet::XLSX 模块中的函数:metacpan.org/release/Spreadsheet-XLSX/source/lib/Spreadsheet/… 具体来说,是处理格式的 foreach 循环。
-
您要求知道为什么会发生这种情况,然后继续回答您自己的问题。 (Quickbook 说要使用欧元符号。)然后您询问是否有解决方案,但您表明 S::BR 完全按照说明进行操作。最后,您建议使用更好的电子表格解析器,但您指出电子表格解析器工作正常。你想从我们这里得到什么?
标签: excel perl xml-parsing