1

我想将文本框中输入的值(只能为空或“1”或“2”或“3”)转换为整数。如果为空,我希望它为 0,否则为对应的值(1、2 或 3)。

有没有办法做到这一点:

MyIntVal = TryConvertToInt(textBox1.Text, 0);

...在哪里空字符串或任何不容易转换为 int 的东西会默认为 0?

4

3 回答 3

9

您可以使用Int32.TryParse 方法

int myIntVal;
if (!int.TryParse(textBox1.Text, out myIntVal))
{
    myIntVal = 42;
}

如果方法返回false,则无法解析文本。myIntVal0在这种情况下;您可以为变量分配不同的默认值,如上所示。

于 2012-04-25T00:26:55.613 回答
8
int result = 0;
int.TryParse(stringValue, out result);

如果 stringValue 无法解析为 int,则默认为 0。

http://msdn.microsoft.com/en-us/library/f02979c7.aspx

于 2012-04-25T00:27:30.133 回答
7

有静电TryParsetrue如果有效,它会返回。

int myIntVal;
int.TryParse(textBox1.Text, out myIntVal);
于 2012-04-25T00:26:41.290 回答