c# - 为什么 float.parse 返回错误值?

标签 c# parsing floating-point numbers floating

我有一个问题。当我将像“0.005”这样的字符串解析为 float 或 double 时,它在我的电脑上运行良好,但当我将我的程序安装到我的客户端电脑时,它返回 5。(我的电脑和我的客户端电脑都使用 Windows 7 x64) .这是我的例子

public float getFloat()
    {
        float mn = float.Parse("0.005");
        double mn2 = Convert.ToDouble("0.005");
        return mn;
    }

最佳答案

这可能是系统文化设置的问题。试试这个:

float.Parse("0.005", CultureInfo.InvariantCulture);

关于c# - 为什么 float.parse 返回错误值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16657090/

相关文章:

c# - NHibernate 3.2 集合属性为空,而支持字段包含项目

python - 以稳健的方式解析带有转义字符的分隔字符串

python - Python 是否有用于解析 HTTP 请求和响应的模块?

.net - C# Math.Pow() 坏了

objective-c - 将 float 舍入为数组中的 float

c# - PluralizationServices 将 Status 更改为 Statu

c# - 通过 Visual Studio FTP 将 ASP.NET Core MVC 网站发布到 IONOS 1&1

c# - 在 LINQ 语句中使用部分类属性

ruby - 使用 OptionParser 解析 Ruby 中的多个命令行选项

c - 在进行浮点除法时加倍和返回时是否有任何精度增益?