.net 部署到客户服务器后字符串转浮点型,没有小数点
解决方法:
在web.config,system.web节中加入<globalization culture="en-US" uiCulture ="en-US"/>,设置运行时采用的区域语言设置,将区域语言设置成英文后就正常了。
问题原因:
1、问题出现时的情况经过Log输出发现,从Excel中读取的带有小数点的字符串中的小数点“.”变成了“,”(圆点变成了逗号)。
2、百度一下,发现是区域语言中设置的小数点是“,”,因为在某些国家使用逗号做小数点的。
3、然后就改了区域语言设置中的选项,测试没有作用,字符串装换成浮点型时小数点就不见了,例如0.453变成了453。
4、然后有开发了一个桌面应用程序来测试,发现没有问题,可以将0.453转换成0.453并显示出来。
5、然后就想是不是要在IIS中设置区域语言,发现IIS中有个.NET Globalization,就把里面的两个区域语言设置成立中国中文,测试无效(再没有改变设置)。
6、采用了解决办法中的设置后正常了。

浙公网安备 33010602011771号