我刚刚下载了ClosedXML,可以在我正在编写的一个小应用程序中使用。在应用程序中,我从数据库加载了一些数据以输出到Excel文件。我的本地号码格式使用逗号作为小数点。看起来ClosedXML无法将它们识别为数字,结果它们被保存为文本,因此在打开文件时必须手动进行转换。
我尝试将单元格的DataType
设置为XLCellValues.Number
,但是当我这样做时,会引发异常,例如"Cannot set data type to Number because '1534,8250' is not recognized as a number."
看来这是由于ClosedXML使用了CultureInfo.InvariantCulture
而不是CultureInfo.CurrentCulture
引起的。
有什么方法可以解决此问题,只需用句号替换所有逗号和/或重新编译ClosedXML项目以使用CurrentCulture
?
最佳答案
您应该始终以文化专用格式存储数据。文化应仅用于呈现数据。
这意味着,正确的解决方案是,在保存到XML时,您不应该使用数字格式的字符串。 Excel应针对特定区域性显示编号。
关于c# - ClosedXML解析逗号的数量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41932225/