C# 在Windows 7或Windows 8上,浮点解析是否不同?
今天我在Windows7上测试了我的程序。它不起作用,我发现了错误 以下情况: 我把一个字符串转换成一个浮点数。 Windows 8:C# 在Windows 7或Windows 8上,浮点解析是否不同?,c#,windows-7,windows-8,C#,Windows 7,Windows 8,今天我在Windows7上测试了我的程序。它不起作用,我发现了错误 以下情况: 我把一个字符串转换成一个浮点数。 Windows 8:float.Parse(String.Replace(“.”,“,”) 但在Windows7上,我必须直接做相反的事情,以避免崩溃 Windows 7:float.Parse(String.Replace(“,”,”) Windows 7浮动=50.00 Windows 8浮动=50,50 为什么呢 你知道解决这个问题的好方法吗?这与Windows 7或8无关,只
float.Parse(String.Replace(“.”,“,”)
但在Windows7上,我必须直接做相反的事情,以避免崩溃
Windows 7:float.Parse(String.Replace(“,”,”)
Windows 7浮动=50.00
Windows 8浮动=50,50
为什么呢
你知道解决这个问题的好方法吗?这与Windows 7或8无关,只与您的区域/本地化设置有关。如果您希望能够始终使用“.”进行解析,可以指定
System.Globalization.CultureInfo.InvariantCulture
作为大多数解析函数的第二个参数。这与Windows 7或8无关,只与您的区域/本地化设置有关。如果您希望能够始终使用“.”进行解析,则可以指定System.Globalization.CultureInfo.InvariantCulture
作为大多数解析函数的第二个参数。您的一台机器是否正被来自欧洲的用户使用?默认情况下,使用用户位置的约定对浮点进行格式化/解析。请使用float.Parse(“,System.Globalization.CultureInfo.InvariantCulture)
以避免操作系统当前的文化您的一台机器正在被来自欧洲的用户使用吗?默认情况下,使用用户位置的约定格式化/解析浮点。使用float.Parse(“,System.Globalization.CultureInfo.InvariantCulture)
避免操作系统当前区域性