Windows Dev Center

Char.GetNumericValue Method (Char)

Converts the specified numeric Unicode character to a double-precision floating point number.

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

public static double GetNumericValue(
	char c


Type: System.Char
A Unicode character.

Return Value

Type: System.Double
The numeric value of c if that character represents a number; otherwise, -1.0.

The c parameter must be the Char representation of a numeric value. For example, if c is '5', the return value is 5. However, if c is 'z', the return value is -1.0.

A character has an associated numeric value if and only if it is a member of one of the following UnicodeCategory categories: DecimalDigitNumber, LetterNumber, or OtherNumber.

The GetNumericValue method assumes that c corresponds to a single linguistic character and checks whether that character can be converted to a decimal digit. However, some numbers in the Unicode standard are represented by two Char objects that form a surrogate pair. For example, the Aegean numbering system consists of code points U+10107 through U+10133. The following example instantiates a string that represents AEGEAN NUMBER ONE. As the output from the example shows, the GetNumericValue method returns false if it is passed either a high surrogate or a low surrogate of this character.

string surrogate = "\uD800\uDD07";            // AEGEAN NUMBER ONE
foreach (var ch in surrogate)
   outputBlock.Text += String.Format("U+{0:X4}: {1}    ", Convert.ToUInt16(ch),
                                          Char.GetNumericValue(ch)) + "\n";

// The example displays the following output:
//       U+D800: -1
//       U+DD07: -1

The following example demonstrates GetNumericValue.

using System;

public class Example
   public static void Demo(System.Windows.Controls.TextBlock outputBlock)
      string str = "input: 1";

      outputBlock.Text += Char.GetNumericValue('8') + "\n";        // Output: "8"
      outputBlock.Text += Char.GetNumericValue(str, 7) + "\n";     // Output: "1"

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

© 2015 Microsoft