我正在尝试在 .Net 3.5 中将一个字符串转换为双精度浮点数。这个操作非常简单,只需要使用
double.Parse(value);
我的问题是具有指数标签的值无法正确转换。例如:
double value = double.Parse("8.493151E-2");
这个值应该等于0.0893151,是吗?
但实际上它不是!
这个值是84931.51!!!
怎么会这样呢?我完全搞糊涂了!
我在msdn库中阅读了相关参考文献,并确认支持像"8.493151E-2"这样的值。我也尝试使用double.Parse()的NumberStyles重载,但没有成功。
请帮帮我!
IFormatProvider
,它将使用您计算机的区域设置。您的位置为“DE Oldenburg”,我假设您在德国使用小数逗号和千位分隔符“。”。 - ChrisF