将字符串放入Integer

时间:2013-12-05 14:35:02

标签: c# winforms

我对C#语言很陌生。如何将字符串放入int?

我尝试过以下方法:

number gets filled from database value and I can't change the database field type....

int getal = number; //where number is a String.

5 个答案:

答案 0 :(得分:6)

试试这个:

//With this 'number' will converted to an Integer 
int getal = Convert.ToInt32(number);

或者你可以试试这个:

int getal;
if(int.TryParse(number, out getal))
{
    // the number is valid, parse was succesfull!
}

答案 1 :(得分:4)

使用int.Parseint.TryParse

int getal = int.Parse(number); // can throw an exception if the format is invalid

或验证号码:

int getal;
if(int.TryParse(number, out getal))
{
    // valid int, the value is now parsed successfully
}

答案 2 :(得分:3)

您可以使用int.Parse

int getal = int.Parse(number);

您还可以使用int.TryParse,以便在发生异常时,它不会停止您的程序。相反,它只会输出0

int getal;
bool valid = int.TryParse(number, out getal); //in this case *getal* is the converted string

您还可以使用有效变量来检查它是否是有效的int。

答案 3 :(得分:1)

由于此整数来自数据库,因此可以使用可以为空的整数

if(String.IsNullOrEmpty(number)){
   return new int?;
} else {
 // use try parse

答案 4 :(得分:0)

更安全的方法是使用int.TryParse:

//
// See if we can parse the 'text' string. If we can't, TryParse
// will return false. Note the "out" keyword in TryParse.
//
string text1 = "x";
int num1;
bool res = int.TryParse(text1, out num1);
if (res == false)
{
    // String is not a number.
}

//
// Use int.TryParse on a valid numeric string.
//
string text2 = "10000";
int num2;
if (int.TryParse(text2, out num2))
{
    // It was assigned.
}

//
// Display both results.
//
Console.WriteLine(num1);
Console.WriteLine(num2);