【发布时间】:2010-09-09 01:01:07
【问题描述】:
使用 C# 从科学计数法字符串(例如“1.234567E-06”)转换为浮点变量的正确方法是什么?
【问题讨论】:
标签: c# floating-point scientific-notation
使用 C# 从科学计数法字符串(例如“1.234567E-06”)转换为浮点变量的正确方法是什么?
【问题讨论】:
标签: c# floating-point scientific-notation
也可以考虑使用
Double.TryParse("1.234567E-06", System.Globalization.NumberStyles.Float, out MyFloat);
这将确保MyFloat 设置为值 0,如果由于某种原因无法执行转换。或者您可以将Double.Parse() 示例包装在Try..Catch 块中,并在检测到异常时将MyFloat 设置为您选择的值。
【讨论】:
Double.Parse("1.234567E-06", System.Globalization.NumberStyles.Float);
【讨论】:
.,则将不起作用。因此,始终有效的方法是使用NumberStyles.Any 或(更好)强制InvariantCulture:Double.Parse("1.234567E-06", NumberStyles.Float, CultureInfo.InvariantCulture);