我有点困惑为什么 NumberStyles.AllowExponent
单独不能用科学记数法解析我的十进制。
这会引发异常:
Decimal.Parse("4.06396113432292E-08",
System.Globalization.NumberStyles.AllowExponent)
然而,这不会:
Decimal.Parse("4.06396113432292E-08",
System.Globalization.NumberStyles.AllowExponent
| System.Globalization.NumberStyles.Float)
我没有看到
NumberStyle.Float
添加了什么(我不了解它的 MSDN 文档)。 最佳答案
来自 MSDN :
如果您不允许使用小数点,则 4.06...
将不会解析。
请注意, NumberStyle.Float
还包括 AllowExponent
,因此您无需单独指定。这应该自己工作:
Decimal.Parse("4.06396113432292E-08", System.Globalization.NumberStyles.Float)