Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Metodo Char.GetNumericValue (String, Int32)

 

Data di pubblicazione: ottobre 2016

Converte il carattere numerico Unicode nella posizione specificata di una determinata stringa in un numero a virgola mobile a precisione doppia.

Spazio dei nomi:   System
Assembly:  mscorlib (in mscorlib.dll)

public static double GetNumericValue(
	string s,
	int index
)

Parametri

s
Type: System.String

Oggetto String.

index
Type: System.Int32

Posizione del carattere in s.

Valore restituito

Type: System.Double

Valore numerico del carattere alla posizione index in s se tale carattere rappresenta un numero; in caso contrario, -1.

Exception Condition
ArgumentNullException

s è null.

ArgumentOutOfRangeException

index è minore di zero o maggiore dell'ultima posizione in s.

Il s parametro deve essere la rappresentazione di stringa di un valore numerico. Ad esempio, se il carattere alla posizione index in s è "5", il valore restituito è 5. Tuttavia, se il carattere alla posizione index in s è "z", il valore restituito è -1.

Posizioni dei caratteri in una stringa vengono indicizzate a partire da zero.

Un carattere dispone di un valore numerico associato se e solo se è un membro di uno dei seguenti UnicodeCategory categorie: DecimalDigitNumber, LetterNumber, o OtherNumber.

Se il Char oggetto posizione index è il primo carattere di una coppia di surrogati valide, la GetNumericValue(String, Int32) metodo determina se la coppia di surrogati forma una cifra numerica. Ad esempio, il sistema di numerazione Egeo è costituito da punti di codice U + 10107 e U + 10133. L'esempio seguente usa il ConvertFromUtf32 metodo per creare un'istanza di una stringa che rappresenta ogni numero Egeo. Come illustrato nell'esempio, l'output di GetNumericValue(String, Int32) metodo restituisce il valore numerico corretto se viene passato il surrogato alto di un numero Egeo. Tuttavia, se viene passato il surrogato basso, considera solo il surrogato basso in isolamento e restituisce -1.

// Define a UTF32 value for each character in the 
// Aegean numbering system.
for (int utf32 = 0x10107; utf32 <= 0x10133; utf32++) {
   string surrogate = Char.ConvertFromUtf32(utf32);
   for (int ctr = 0; ctr < surrogate.Length; ctr++) 
      Console.Write("U+{0:X4} at position {1}: {2}     ", 
                        Convert.ToUInt16(surrogate[ctr]), ctr,  
                        Char.GetNumericValue(surrogate, ctr));

   Console.WriteLine();
}    
// The example displays the following output:
//       U+D800 at position 0: 1     U+DD07 at position 1: -1
//       U+D800 at position 0: 2     U+DD08 at position 1: -1
//       U+D800 at position 0: 3     U+DD09 at position 1: -1
//       U+D800 at position 0: 4     U+DD0A at position 1: -1
//       U+D800 at position 0: 5     U+DD0B at position 1: -1
//       U+D800 at position 0: 6     U+DD0C at position 1: -1
//       U+D800 at position 0: 7     U+DD0D at position 1: -1
//       U+D800 at position 0: 8     U+DD0E at position 1: -1
//       U+D800 at position 0: 9     U+DD0F at position 1: -1
//       U+D800 at position 0: 10     U+DD10 at position 1: -1
//       U+D800 at position 0: 20     U+DD11 at position 1: -1
//       U+D800 at position 0: 30     U+DD12 at position 1: -1
//       U+D800 at position 0: 40     U+DD13 at position 1: -1
//       U+D800 at position 0: 50     U+DD14 at position 1: -1
//       U+D800 at position 0: 60     U+DD15 at position 1: -1
//       U+D800 at position 0: 70     U+DD16 at position 1: -1
//       U+D800 at position 0: 80     U+DD17 at position 1: -1
//       U+D800 at position 0: 90     U+DD18 at position 1: -1
//       U+D800 at position 0: 100     U+DD19 at position 1: -1
//       U+D800 at position 0: 200     U+DD1A at position 1: -1
//       U+D800 at position 0: 300     U+DD1B at position 1: -1
//       U+D800 at position 0: 400     U+DD1C at position 1: -1
//       U+D800 at position 0: 500     U+DD1D at position 1: -1
//       U+D800 at position 0: 600     U+DD1E at position 1: -1
//       U+D800 at position 0: 700     U+DD1F at position 1: -1
//       U+D800 at position 0: 800     U+DD20 at position 1: -1
//       U+D800 at position 0: 900     U+DD21 at position 1: -1
//       U+D800 at position 0: 1000     U+DD22 at position 1: -1
//       U+D800 at position 0: 2000     U+DD23 at position 1: -1
//       U+D800 at position 0: 3000     U+DD24 at position 1: -1
//       U+D800 at position 0: 4000     U+DD25 at position 1: -1
//       U+D800 at position 0: 5000     U+DD26 at position 1: -1
//       U+D800 at position 0: 6000     U+DD27 at position 1: -1
//       U+D800 at position 0: 7000     U+DD28 at position 1: -1
//       U+D800 at position 0: 8000     U+DD29 at position 1: -1
//       U+D800 at position 0: 9000     U+DD2A at position 1: -1
//       U+D800 at position 0: 10000     U+DD2B at position 1: -1
//       U+D800 at position 0: 20000     U+DD2C at position 1: -1
//       U+D800 at position 0: 30000     U+DD2D at position 1: -1
//       U+D800 at position 0: 40000     U+DD2E at position 1: -1
//       U+D800 at position 0: 50000     U+DD2F at position 1: -1
//       U+D800 at position 0: 60000     U+DD30 at position 1: -1
//       U+D800 at position 0: 70000     U+DD31 at position 1: -1
//       U+D800 at position 0: 80000     U+DD32 at position 1: -1
//       U+D800 at position 0: 90000     U+DD33 at position 1: -1

L'esempio di codice seguente illustra GetNumericValue.

using System;

public class GetNumericValueSample {
	public static void Main() {
		string str = "input: 1";

		Console.WriteLine(Char.GetNumericValue('8'));		// Output: "8"
		Console.WriteLine(Char.GetNumericValue(str, 7));	// Output: "1"
	}
}

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 1.1
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 2.0
Windows Phone Silverlight
Disponibile da 7.0
Windows Phone
Disponibile da 8.1
Torna all'inizio
Mostra: