C#中创建一个控制台应用程序,怎么检查输入的是否是数字?
解决方案 »
- ibatis.net
- Process.WaitExit()疑问 , 急 , 在线等
- 我写一段求迷宫是否可走通的代码,效果不行,求助?迷宫用0,1数组Map[20,20],1标示墙体,0标示路
- VB.net 中的 'System.Threading.Thread.CurrentThread.Sleep(10) 在C#中如何做。
- 关于C#程序打包的问题
- 一个文档,除了project文件是c# project,其他都是文本格式的,有sln文件,要怎么把它弄成平时的项目?
- web开发中,用表格来控制.aspx的界面好不好??
- 请问WINFORM里有无像DIV一样的文本容器
- 请问如何在C#的sqlcommand中使用datetime
- Microsoft.Jet.OLEDB作为driver,怎样打开有密码的excel文件
- WINFORM FILE.COPY 如何写相对路径?
- 建立treeView后,使用indexof(treenode)总是返回-1??
出异常说明有非数字的在里面。
或者写个正则应该也行的
/// <summary>
/// 检测字符串是否全为正整数
/// </summary>
/// <param name="str"></param>
/// <returns></returns>
public static bool IsNum(string str)
{
bool blResult = true;//默认状态下是数字 if(str == "")
blResult = false;
else
{
foreach(char Char in str)
{
if(!char.IsNumber(Char))
{
blResult = false;
break;
}
}
if(blResult)
{
if(int.Parse(str) == 0)
blResult = false;
}
}
return blResult;
}
double value;
if (double.TryParse(input, out value))
{
//输入的是数字
//value就是值
//int.TryParse double.TryParse.....
}
{
var1=System.Convert.ToInt32(text1.text);
}
catch
{}
string input = Console.ReadLine();
bool IsNum = Regex.IsMatch(input,@"^\d+$");
try...catch想了半天,没有思路,能否提示一下?
谢谢!这是我接收的变量,判断firstNumber是否是数字
firstNumber=Convert.ToDouble(Console.ReadLine ());
{
Console.WriteLine(char.IsNumber((char)Console.Read()).ToString());
Console.Read();
}
是不是定义为string型的比较好判断?
{
string S = Console.ReadLine();
bool IsNumber = true;
foreach (char c in S.ToCharArray())
IsNumber &= char.IsNumber(c);
Console.WriteLine(IsNumber.ToString());
Console.Read();
}
public static bool IsAllCharactersNumber(string str)
{
bool bIsNumber = true;
if (str.Length == 0) return false; for (int i = 0; i < str.Length; i++)
{
char cTemp = str[i];
int iTemp = Convert.ToInt32(cTemp);
if (iTemp < 48 || iTemp > 57)
{
bIsNumber = false;
break;
}
} return bIsNumber;
}
string input = Console.ReadLine();
bool IsNum = Regex.IsMatch(input,@"^\d+$");
测试过没问题的 /// <summary>
/// 是否是数字并且是否有小数
/// </summary>
/// <param name="strNum"></param>
/// <param name="intNumLength"></param>
/// <returns></returns>
public static bool NumIsNotDouble(string strNum, int intNumLength)
{
string strYlib;
strYlib = @"^\s*(\d{"; for (int i = 1; i < intNumLength; i++)
{
strYlib += i + @"}|(\d{";
} strYlib += intNumLength + "}";
for (int i = 1; i < intNumLength; i++)
{
strYlib += ")";
}
strYlib += @")\s*$"; if (Regex.IsMatch(strNum, @strYlib) != true)
{
return false;
}
return true;
}
{
firstNumber=Convert.ToDouble(Console.ReadLine ());
double.parse(firstNumber);
//firstNumber是数字 如果是整数用Int.parse();
}
catch {
// 不是整数
}
就这了,最方便的Int64.TryParse也可!
object dd=Console.ReadLine();
if(int.Parae(dd.ToString(),out intput)) //如果这里为true的话就是out(将你输入的dd 转化为input整数输出)这时候就可以直接调用了
{
Console.WriteLine("您输入的整数是{0}",intput);
}
else
{
Console.WriteLine("您输入的不是整数");}