当前位置:  开发笔记 > 编程语言 > 正文

从科学记数法字符串转换为C#中的float

如何解决《从科学记数法字符串转换为C#中的float》经验,为你挑选了2个好方法。

使用C#将科学记数法字符串(如"1.234567E-06")转换为浮点变量的正确方法是什么?



1> 小智..:
Double.Parse("1.234567E-06", System.Globalization.NumberStyles.Float);


如果当前文化的小数分隔符不是`.`,则无效.因此,始终工作的方法是使用`NumberStyles.Any`或(更好)强制`InvariantCulture`:`Double.Parse("1.234567E-06",NumberStyles.Float,CultureInfo.InvariantCulture);

2> Jaymie Thoma..:

还考虑使用

Double.TryParse("1.234567E-06", System.Globalization.NumberStyles.Float, out MyFloat);

MyFloat如果由于某种原因无法执行转换,这将确保将值设置为0.或者,您可以将Double.Parse()示例包装在一个Try..Catch块中,并MyFloat在检测到异常时将其设置为您选择的值.


您不希望依赖于MyFloat为0来表示转换失败,您希望依赖于bool返回值.
推荐阅读
云聪京初瑞子_617
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有