我有一个文本文件,我用来将信息输入到我的应用程序中.问题是一些值是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);