";值的格式不正确”;将字符串转换为int32时出错

本文关键字:转换 字符串 出错 int32 quot 格式 不正确 | 更新日期: 2023-09-27 18:21:37

这是我的代码;

string a="11.4";
int b,c;
b=2;
c= convert.toint32(a) * b

我得到了这个错误;

输入字符串的格式不正确

如何转换"a"?

";值的格式不正确”;将字符串转换为int32时出错

a不是整数值,您可以使用Convert.ToDouble()。为了防止在可能出现解析错误的情况下使用double.TryParse()

string a = "11.4";
double d;
if (double.TryParse(a, out d))
{
    //d now contains the double value
}

编辑:

当然,考虑到注释,最好指定区域性设置。这里有一个使用double.TryParse()的区域性独立设置的例子,结果会导致11.4

if (double.TryParse(a, NumberStyles.Number, CultureInfo.InvariantCulture, out d))
{
    //d now contains the double value
}

乍一看,数字文字"11.4"不是实际的"int"。尝试其他转换格式,例如ToDouble()

我在C#中尝试了以下代码供您参考。

        string a = "11.4";
        double num_a = Convert.ToDouble(a);
        int b = 2;
        double ans = num_a * b;