你知道如何将字符串解析为可以为空的<int>?</int>

时间:2012-01-25 00:05:40

标签: c# int nullable

我正在寻找一个将字符串转换为可空int的函数。但是这个必须返回一个布尔值。

4 个答案:

答案 0 :(得分:5)

这样的东西?

    public int? NullableInt(string str)
    {
        int i;
        if (int.TryParse(str, out i))
            return i;
        return null;
    }

答案 1 :(得分:1)

这应该可以解决问题:

string str = "1234";
int number = 0;
int.TryParse(str, out number);
Nullable<int> result = new Nullable<int>(number);

答案 2 :(得分:0)

这样的事情,也许是:

public static int? TryParse(string str)
{
    int result;
    if (Int32.TryParse(str, out result))
    {
        return result;
    }
    else
    {
        return null;
    }
}

如果解析失败,我们返回一个空值,否则返回成功解析的值。

答案 3 :(得分:-1)

您始终可以将string解析为int并将结果分配给int?例如:

string myNumericString = "1234";
int? x = Int32.Parse(myNumericString);

您也可以尝试:

int? x = null;
int result;
if (Int32.TryParse(myNumericString, out result) )
{
    x = result;
}

// Then you can check x.HasValue