27

文字が整数かどうかをチェックして何かをすることができる関数を探しています。

char a = '1';

if (Function(a))
{
  do something
}
4

9 に答える 9

36

System.Char.IsDigitメソッドを使用する

于 2012-10-12T19:59:57.797 に答える
23

純粋な0-9数字だけが必要な場合は、

if(a>='0' && a<='9')

IsNumericIsDigit0〜9の範囲外の一部の文字については、両方ともtrueを返します。

C#でのChar.IsDigit()とChar.IsNumber()の違い

于 2012-10-12T20:04:18.410 に答える
6

Integer.TryParseうまくいきます。

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

于 2012-10-12T19:59:52.447 に答える
2

System.Char.IsDigitメソッドを使用してみてください。

于 2012-10-12T20:02:24.363 に答える
1

試してみてくださいChar.IsNumber。ドキュメントと例はここにあります

于 2012-10-12T20:00:56.783 に答える
0

switch ステートメントを使用した方がよい場合もあります。何かのようなもの:

switch(a)
{
  case '1':
    //do something.
    break;
  case '2':
    // do something else.
    break;
  default: // Not an integer
    throw new FormatException();
    break;
}

これは、文字 0 ~ 9 のみを探している限り機能します。それを超えるもの (「10」など) は、文字ではなく文字列になります。一部の入力が整数で、入力が文字列であるかどうかを確認しようとしている場合は、次のことができます。

try
{
  Convert.ToInt32("10")
}
catch (FormatException err)
{
  // Not an integer, display some error.
}
于 2012-10-12T20:03:31.620 に答える