字符串到int formatexception

时间:2013-10-23 19:46:05

标签: c# .net

在php中,我可以这样做:

if (balance == 0 && !neverBought)

余额来自API,是一个字符串。

在C#中,我尝试将balance转换为int,如下所示:

if (int.Parse(balance) == 0 && !(neverBought))

但是我得到了异常详细信息:System.FormatException:输入字符串的格式不正确。

我做错了什么?

2 个答案:

答案 0 :(得分:7)

如果您不确定字符串是否有效,请使用TryParse之类的方法尝试解析它而不抛出异常:

根据评论你也没有整数,你有一个十进制值,所以你也应该把它解析为一个。

decimal decimalBalance;
if(decimal .TryParse(balance, out decimalBalance) 
    && decimalBalance == 0m && !neverBought)

答案 1 :(得分:-1)

如果您确定余额不是字符串,

Convert.ToInt32()可能会有所帮助

            string a = "3";
            int b = 3;
            if (Convert.ToInt32(a) == b)
            {
                //do smth
            }