加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – float.Parse()不按照我想要的方式工作

发布时间:2020-12-15 06:22:25 所属栏目:百科 来源:网络整理
导读:我有一个文本文件,我用来将信息输入到我的应用程序中.问题是一些值是float,有时它们是null,这就是为什么我得到一个异常. var s = "0.0"; var f = float.Parse(s); 上面的代码在第2行引发异常“输入字符串不正确的格式”. 我相信该解决方案将是float.Parse的
我有一个文本文件,我用来将信息输入到我的应用程序中.问题是一些值是float,有时它们是null,这就是为什么我得到一个异常.
var s = "0.0";
        var f = float.Parse(s);

上面的代码在第2行引发异常“输入字符串不正确的格式”.

我相信该解决方案将是float.Parse的高级重载,其中包括IFormatProvider作为参数,但是我还不了解它.

如何解析“0.0”?

解决方法

点符号“.不用作分隔符(这取决于文化设置).所以如果你想绝对确定这个点被正确解析,你需要写这样的东西:
CultureInfo ci = (CultureInfo)CultureInfo.CurrentCulture.Clone();
ci.NumberFormat.CurrencyDecimalSeparator = ".";
avarage = double.Parse("0.0",NumberStyles.Any,ci);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读