C#验证数字的几种方法?

方法一:

static bool IsNumeric(string str)

{

if (str==null || str.Length==0)

return false;

foreach(char c in str)

{

if (!Char.IsNumber(c))

{

return false;

}

}

return true;

}

方法二:

private bool IsNumeric(string s)

{

char ch0 = '0';

char ch9 = '9';

for(int i=0; i < s.Length; i++)

{

if ((s[i] < ch0 || s[i] > ch9))

{

this.lblwarning.Text="此处应输入整数且非负!";

return false;

}

}

return true;

}

以上两种方法都只能验证字符串是否为整数,不能验证小数,一下两种方法就解决了这个问题。

方法三:

static bool IsNumeric (string str)

{

System.Text.RegularExpressions.Regex reg1

= new System.Text.RegularExpressions.Regex(@"^[-]?\d+[.]?\d*$");

return reg1.IsMatch(str);

}

方法四:

public static bool IsConvert(string Expression,Type DataType)

{

switch(DataType.Name)

{

case "Double":

try

{

Double.Parse(Expression);

return true;

}

catch

{

return false;

}

case "DateTime":

try

{

DateTime.Parse(Expression);

return true;

}

catch

{

return false;

}

default:

return true;

}

}