CharUnicodeInfo.GetDecimalDigitValue Method (String, Int32)

 

Gets the decimal digit value of the numeric character at the specified index of the specified string.

Namespace:   System.Globalization
Assembly:  mscorlib (in mscorlib.dll)

public static int GetDecimalDigitValue(
	string s,
	int index
)

Parameters

s
Type: System.String

The String containing the Unicode character for which to get the decimal digit value.

index
Type: System.Int32

The index of the Unicode character for which to get the decimal digit value.

Return Value

Type: System.Int32

The decimal digit value of the numeric character at the specified index of the specified string.

-or-

-1, if the character at the specified index of the specified string is not a decimal digit.

Exception Condition
ArgumentNullException

s is null.

ArgumentOutOfRangeException

index is outside the range of valid indexes in s.

This method converts characters that represent decimal digits to their equivalent integral values. Decimal digits are characters in the DecimalDigitNumber category that can represent one of ten digits in the decimal (base 10) numbering system, from zero through nine. It includes characters such as U+0030 (DIGIT ZERO) through U+0039 (DIGIT NINE), U+0660 (ARABIC-INDIC DIGIT ZERO) through U+0669 (ARABIC-INDIC DIGIT NINE), U+07C0 (NKO DIGIT ZERO) through U+07C9 (NKO DIGIT NINE), and U+1040 (MYANMAR DIGIT ZERO) through U+1049 (MYANMAR DIGIT NINE).

For more information about Unicode characters, see the Unicode Standard.

The following code example shows the values returned by each method for different types of characters.

using System;
using System.Globalization;

public class SamplesCharUnicodeInfo  {

   public static void Main()  {

      // The String to get information for.
      String s = "a9\u0393\u00B2\u00BC\u0BEF\u0BF0\u2788";
      Console.WriteLine( "String: {0}", s );

      // Print the values for each of the characters in the string.
      Console.WriteLine( "index c  Num   Dig   Dec   UnicodeCategory" );
      for ( int i = 0; i < s.Length; i++ )  {
         Console.Write( "{0,-5} {1,-3}", i, s[i] );
         Console.Write( " {0,-5}", CharUnicodeInfo.GetNumericValue( s, i ) );
         Console.Write( " {0,-5}", CharUnicodeInfo.GetDigitValue( s, i ) );
         Console.Write( " {0,-5}", CharUnicodeInfo.GetDecimalDigitValue( s, i ) );
         Console.WriteLine( "{0}", CharUnicodeInfo.GetUnicodeCategory( s, i ) );
      }

   }

}


/*
This code produces the following output.  Some characters might not display at the console.

String: a9\u0393\u00B2\u00BC\u0BEF\u0BF0\u2788
index c  Num   Dig   Dec   UnicodeCategory
0     a   -1    -1    -1   LowercaseLetter
1     9   9     9     9    DecimalDigitNumber
2     \u0393   -1    -1    -1   UppercaseLetter
3     \u00B2   2     2     2    OtherNumber
4     \u00BC   0.25  -1    -1   OtherNumber
5     \u0BEF   9     9     9    DecimalDigitNumber
6     \u0BF0   10    -1    -1   OtherNumber
7     \u2788   9     9     -1   OtherNumber

*/

.NET Framework
Available since 2.0
Return to top
Show: