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 UInt64.Parse (String, IFormatProvider)

 

Data di pubblicazione: ottobre 2016

clsCompliantAlternativeM:System.Decimal.Parse(System.String)

Converte la rappresentazione di stringa di un numero in un formato specifico delle impostazioni cultura nel suo equivalente intero senza segno a 64 bit.

Questa API non è conforme a CLS.

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

[CLSCompliantAttribute(false)]
public static ulong Parse(
	string s,
	IFormatProvider provider
)

Parametri

s
Type: System.String

Stringa che rappresenta il numero da convertire.

provider
Type: System.IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura relativamente a s.

Valore restituito

Type: System.UInt64

Intero senza segno a 64 bit equivalente al numero specificato in s.

Exception Condition
ArgumentNullException

Il valore del parametro s è null.

FormatException

Lo stile del parametro s non è corretto.

OverflowException

Il parametro s rappresenta un numero minore di MinValue o maggiore di MaxValue.

Questo overload del metodo di Parse(String, IFormatProvider) metodo viene in genere utilizzato per convertire il testo che può essere formattato in diversi modi per un UInt64 valore. Ad esempio, può essere utilizzato per convertire il testo immesso dall'utente in una casella di testo HTML in un valore numerico.

Il s parametro contiene un numero nel formato:

[ws] [segno] cifre [ws]

Elementi in parentesi quadre ([e]) sono facoltativi. Nella tabella seguente viene descritto ogni elemento.

Elemento

Descrizione

ws

Spazio vuoto facoltativo.

accesso

Un segno positivo facoltativo o un segno negativo se s rappresenta il valore zero.

cifre

Una sequenza di cifre comprese tra 0 e 9.

Il parametro s viene interpretato utilizzando le NumberStyles.Integer stile. Oltre alle cifre decimali del valore integer senza segno, è consentito solo spazi iniziali e finali con un segno iniziale. (Se presente, il segno negativo s deve rappresentare un valore pari a zero e il metodo genera un OverflowException.) Definire in modo esplicito gli elementi di stile con le informazioni di formattazione specifiche delle impostazioni cultura che possono essere presenti in s, utilizzare il Parse(String, NumberStyles, IFormatProvider) metodo.

Il provider parametro è un IFormatProvider implementazione cui GetFormat metodo restituisce un NumberFormatInfo oggetto che fornisce informazioni specifiche delle impostazioni cultura relative al formato di s. Esistono tre modi per utilizzare il provider per fornire informazioni di formattazione personalizzate per l'operazione di analisi:

  • È possibile passare l'oggetto effettivo NumberFormatInfo oggetto che fornisce informazioni di formattazione. (L'implementazione di GetFormat semplicemente restituisce se stesso.)

  • È possibile passare un CultureInfo oggetto che specifica le impostazioni cultura di cui la formattazione da utilizzare. La NumberFormat proprietà fornisce informazioni di formattazione.

  • È possibile passare un oggetto personalizzato IFormatProvider implementazione. Il GetFormat metodo deve creare un'istanza e restituire il NumberFormatInfo oggetto che fornisce informazioni di formattazione.

Se provider è null, NumberFormatInfo per le impostazioni cultura correnti.

Nell'esempio seguente è il gestore di eventi di un form Web click del pulsante. Viene utilizzata la matrice restituita dalla HttpRequest.UserLanguages proprietà per determinare la lingua dell'utente. Crea quindi un CultureInfo oggetto che corrisponde a quella lingua. Il NumberFormatInfo oggetto appartenente al CultureInfo oggetto viene quindi passato al Parse(String, IFormatProvider) input del metodo per convertire l'utente a un UInt64 valore.

protected void OkToSingle_Click(object sender, EventArgs e)
{
   string locale;
   float number;
   CultureInfo culture; 

   // Return if string is empty
   if (String.IsNullOrEmpty(this.inputNumber.Text))
      return;

   // Get locale of web request to determine possible format of number
   if (Request.UserLanguages.Length == 0)
      return;
   locale = Request.UserLanguages[0];
   if (String.IsNullOrEmpty(locale))
      return; 

   // Instantiate CultureInfo object for the user's locale
   culture = new CultureInfo(locale);

   // Convert user input from a string to a number
   try
   {
      number = Single.Parse(this.inputNumber.Text, culture.NumberFormat);
   }
   catch (FormatException)
   {
      return;
   }
   catch (Exception)
   {
      return;
   }
   // Output number to label on web form
   this.outputNumber.Text = "Number is " + number.ToString();
}

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: