我在我的应用程序中使用LinqToExcel已经有一段时间了,并且一直像魅力一样。
但是我在从Excel中读取货币字符串时遇到了问题。
我还无法发布图片,但excel中的值9999
格式化为9.999,00
( pt-BR )
我的机器中的本地LinqToExcel读取此值就好了(9999)我可以将其转换为十进制。
但是在具有 en-US 文化的IIS服务器上,它会将此值读取为9,999.00,因此当我尝试将其转换为十进制时,我会得到一个例外。
有没有办法为LinqToExcel设置默认文化或类似的东西?因为我不想替换,
和.
它太难看了。
我正在使用C#VS2013。
答案 0 :(得分:0)
实际上问题是excel的第一行都是空字符串,所以如果用户将这些字段留空,LinqToExcel会假定字符串作为这些列的类型,而是返回屏蔽输入(9.999,00)整数值(9999)。
解决方法是在文件保存/关闭时使用excel文件中的VBA宏将空字符串替换为0(零)。