UInt32.TryParse Metodo

Definizione

Prova a convertire la rappresentazione di stringa di un numero nel relativo intero senza segno a 32 bit equivalente.Tries to convert the string representation of a number to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

Overload

TryParse(String, UInt32)

Prova a convertire la rappresentazione di stringa di un numero nel relativo intero senza segno a 32 bit equivalente.Tries to convert the string representation of a number to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

TryParse(ReadOnlySpan<Char>, UInt32)

Tenta di convertire la rappresentazione in forma di intervallo di un numero nel relativo intero senza segno a 32 bit equivalente.Tries to convert the span representation of a number to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

TryParse(String, NumberStyles, IFormatProvider, UInt32)

Prova a convertire la rappresentazione di stringa di un numero in uno stile e in un formato specifico delle impostazioni cultura specificati nel relativo intero senza segno a 32 bit equivalente.Tries to convert the string representation of a number in a specified style and culture-specific format to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, UInt32)

Tenta di convertire la rappresentazione in forma di intervallo di un numero in uno stile e in un formato specifico delle impostazioni cultura specificati nel relativo intero senza segno a 32 bit equivalente.Tries to convert the span representation of a number in a specified style and culture-specific format to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

TryParse(String, UInt32)

Importante

Questa API non è conforme a CLS.

Alternativa conforme a CLS
System.Int64.TryParse(String, Int64)

Prova a convertire la rappresentazione di stringa di un numero nel relativo intero senza segno a 32 bit equivalente.Tries to convert the string representation of a number to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

public:
 static bool TryParse(System::String ^ s, [Runtime::InteropServices::Out] System::UInt32 % result);
[System.CLSCompliant(false)]
public static bool TryParse (string s, out uint result);
static member TryParse : string * uint32 -> bool
Public Shared Function TryParse (s As String, ByRef result As UInteger) As Boolean

Parametri

s
String

Stringa che rappresenta il numero da convertire.A string that represents the number to convert.

result
UInt32

Quando questo metodo viene restituito, contiene il valore intero senza segno a 32 bit equivalente al numero contenuto in s se la conversione riesce; in caso contrario, contiene zero.When this method returns, contains the 32-bit unsigned integer value that is equivalent to the number contained in s, if the conversion succeeded, or zero if the conversion failed. La conversione non riesce se il parametro s è null o Empty, non è nel formato corretto o rappresenta un numero minore di MinValue o maggiore di MaxValue.The conversion fails if the s parameter is null or Empty, is not of the correct format, or represents a number that is less than MinValue or greater than MaxValue. Questo parametro viene passato non inizializzato. Qualsiasi valore fornito in origine in result verrà sovrascritto.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Restituisce

true se s è stato convertito correttamente; in caso contrario, false.true if s was converted successfully; otherwise, false.

Attributi

Esempi

Nell'esempio seguente viene chiamato il metodo TryParse(String, UInt32) una volta per ogni elemento in una matrice di stringhe.The following example calls the TryParse(String, UInt32) method once for each element in a string array.

string[] numericStrings = { "1293.8", "+1671.7", "28347.",  
                            "   33113684  ", "(0)", "-0", "-1", 
                            "+1293617", "18-", "119870", "31,024", 
                            "  3127094 ", "00700000" };
uint number;
foreach (string numericString in numericStrings)
{
   if (UInt32.TryParse(numericString, out number)) 
      Console.WriteLine("Converted '{0}' to {1}.", numericString, number);
   else
      Console.WriteLine("Cannot convert '{0}' to a UInt32.", numericString);
}
// The example displays the following output:
//       Cannot convert '1293.8' to a UInt32.
//       Cannot convert '+1671.7' to a UInt32.
//       Cannot convert '28347.' to a UInt32.
//       Converted '   33113684  ' to 33113684.
//       Cannot convert '(0)' to a UInt32.
//       Converted '-0' to 0.
//       Cannot convert '-1' to a UInt32.
//       Converted '+1293617' to 1293617.
//       Cannot convert '18-' to a UInt32.
//       Converted '119870' to 119870.
//       Cannot convert '31,024' to a UInt32.
//       Converted '  3127094 ' to 3127094.
//       Converted '0070000' to 70000.
Dim numericStrings() As String = {"1293.8", "+1671.7", "28347.", 
                                  "   33113684  ", "(0)", "-0", "-1",
                                  "+1293617", "18-", "119870", 
                                  "31,024", "  3127094 ", "0070000" }
Dim number As UInteger
For Each numericString As String In numericStrings
   If UInt32.TryParse(numericString, number) Then
      Console.WriteLine("Converted '{0}' to {1}.", numericString, number)
   Else
      Console.WriteLine("Cannot convert '{0}' to a UInt32.", numericString)
   End If      
Next
' The example displays the following output:
'       Cannot convert '1293.8' to a UInt32.
'       Cannot convert '+1671.7' to a UInt32.
'       Cannot convert '28347.' to a UInt32.
'       Converted '   33113684  ' to 33113684.
'       Cannot convert '(0)' to a UInt32.
'       Converted '-0' to 0.
'       Cannot convert '-1' to a UInt32.
'       Converted '+1293617' to 1293617.
'       Cannot convert '18-' to a UInt32.
'       Converted '119870' to 119870.
'       Cannot convert '31,024' to a UInt32.
'       Converted '  3127094 ' to 3127094.
'       Converted '0070000' to 70000.

Commenti

Il metodo TryParse è analogo al metodo Parse, ad eccezione del fatto che non genera un'eccezione se la conversione non riesce.The TryParse method is like the Parse method, except that it does not throw an exception if the conversion fails. Questo metodo elimina la necessità di utilizzare la gestione delle eccezioni per testare un FormatException se s non è valido e non può essere analizzato correttamente.This method eliminates the need to use exception handling to test for a FormatException if s is invalid and cannot be successfully parsed.

Il parametro s deve essere la rappresentazione di stringa di un numero decimale nel formato seguente:The s parameter should be the string representation of a decimal number in the following form:

[WS] [segno] cifre[WS][ws][sign]digits[ws]

Gli elementi tra parentesi quadre ([e]) sono facoltativi.Elements in square brackets ([ and ]) are optional. La tabella seguente descrive i singoli elementi.The following table describes each element.

ElementoElement DescrizioneDescription
wsws Spazi vuoti facoltativi.Optional white space.
signsign Segno facoltativo.An optional sign. I caratteri di segno validi sono determinati dalle proprietà NumberFormatInfo.NegativeSign e NumberFormatInfo.PositiveSign delle impostazioni cultura correnti.Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture.
cifredigits Sequenza di cifre decimali comprese tra 0 e 9.A sequence of decimal digits ranging from 0 to 9.

Il parametro s viene interpretato utilizzando lo stile NumberStyles.Integer.The s parameter is interpreted by using the NumberStyles.Integer style. Oltre alle cifre decimali, sono consentiti solo gli spazi iniziali e finali con un segno iniziali.In addition to the decimal digits, only leading and trailing spaces with a leading sign are allowed. Per definire in modo esplicito gli elementi di stile con le informazioni di formattazione specifiche delle impostazioni cultura che possono essere presenti in s, chiamare il metodo TryParse(String, NumberStyles, IFormatProvider, UInt32).To explicitly define the style elements with the culture-specific formatting information that can be present in s, call the TryParse(String, NumberStyles, IFormatProvider, UInt32) method.

Nota

La stringa specificata dal parametro s non può contenere separatori di gruppi o separatori decimali e non può avere una parte frazionaria.The string specified by the s parameter cannot contain any group separators or decimal separator, and it cannot have a fractional portion.

Il parametro s viene analizzato utilizzando le informazioni di formattazione in un oggetto NumberFormatInfo per le impostazioni cultura correnti del sistema.The s parameter is parsed by using the formatting information in a NumberFormatInfo object for the current system culture. Per altre informazioni, vedere NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo.

Questo overload interpreta tutte le cifre nel parametro s come cifre decimali.This overload interprets all digits in the s parameter as decimal digits. Per analizzare la rappresentazione di stringa di un numero esadecimale, chiamare invece l'overload del TryParse(String, NumberStyles, IFormatProvider, UInt32).To parse the string representation of a hexadecimal number, call the TryParse(String, NumberStyles, IFormatProvider, UInt32) overload instead.

Vedi anche

TryParse(ReadOnlySpan<Char>, UInt32)

Importante

Questa API non è conforme a CLS.

Tenta di convertire la rappresentazione in forma di intervallo di un numero nel relativo intero senza segno a 32 bit equivalente.Tries to convert the span representation of a number to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

public:
 static bool TryParse(ReadOnlySpan<char> s, [Runtime::InteropServices::Out] System::UInt32 % result);
[System.CLSCompliant(false)]
public static bool TryParse (ReadOnlySpan<char> s, out uint result);
static member TryParse : ReadOnlySpan<char> * uint32 -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), ByRef result As UInteger) As Boolean

Parametri

s
ReadOnlySpan<Char>

Intervallo contenente i caratteri che rappresentano il numero da convertire.A span containing the characters that represent the number to convert.

result
UInt32

Quando questo metodo viene restituito, contiene il valore intero senza segno a 32 bit equivalente al numero contenuto in s se la conversione riesce; in caso contrario, contiene zero.When this method returns, contains the 32-bit unsigned integer value that is equivalent to the number contained in s, if the conversion succeeded, or zero if the conversion failed. La conversione non riesce se il parametro s è null o Empty, non è nel formato corretto o rappresenta un numero minore di MinValue o maggiore di MaxValue.The conversion fails if the s parameter is null or Empty, is not of the correct format, or represents a number that is less than MinValue or greater than MaxValue. Questo parametro viene passato non inizializzato. Qualsiasi valore fornito in origine in result verrà sovrascritto.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Restituisce

true se s è stato convertito correttamente; in caso contrario, false.true if s was converted successfully; otherwise, false.

Attributi

TryParse(String, NumberStyles, IFormatProvider, UInt32)

Importante

Questa API non è conforme a CLS.

Alternativa conforme a CLS
System.Int64.TryParse(String, Int64)

Prova a convertire la rappresentazione di stringa di un numero in uno stile e in un formato specifico delle impostazioni cultura specificati nel relativo intero senza segno a 32 bit equivalente.Tries to convert the string representation of a number in a specified style and culture-specific format to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

public:
 static bool TryParse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider, [Runtime::InteropServices::Out] System::UInt32 % result);
[System.CLSCompliant(false)]
public static bool TryParse (string s, System.Globalization.NumberStyles style, IFormatProvider provider, out uint result);
static member TryParse : string * System.Globalization.NumberStyles * IFormatProvider * uint32 -> bool
Public Shared Function TryParse (s As String, style As NumberStyles, provider As IFormatProvider, ByRef result As UInteger) As Boolean

Parametri

s
String

Stringa che rappresenta il numero da convertire.A string that represents the number to convert. La stringa viene interpretata usando lo stile specificato dal parametro style.The string is interpreted by using the style specified by the style parameter.

style
NumberStyles

Combinazione bit per bit di valori di enumerazione che indica il formato consentito di s.A bitwise combination of enumeration values that indicates the permitted format of s. Un valore tipico da specificare è Integer.A typical value to specify is Integer.

provider
IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura relativamente a s.An object that supplies culture-specific formatting information about s.

result
UInt32

Quando questo metodo viene restituito, contiene il valore intero senza segno a 32 bit equivalente al numero contenuto in s, se la conversione riesce oppure zero se la conversione non riesce.When this method returns, contains the 32-bit unsigned integer value equivalent to the number contained in s, if the conversion succeeded, or zero if the conversion failed. La conversione non viene eseguita se il parametro s è null o Empty, non è in un formato conforme a style o rappresenta un numero minore di MinValue o maggiore di MaxValue.The conversion fails if the s parameter is null or Empty, is not in a format compliant with style, or represents a number that is less than MinValue or greater than MaxValue. Questo parametro viene passato non inizializzato. Qualsiasi valore fornito in origine in result verrà sovrascritto.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Restituisce

true se s è stato convertito correttamente; in caso contrario, false.true if s was converted successfully; otherwise, false.

Attributi

Eccezioni

style non è un valore di NumberStyles.style is not a NumberStyles value.

-oppure--or- style non è una combinazione di valori di AllowHexSpecifier e HexNumber.style is not a combination of AllowHexSpecifier and HexNumber values.

Esempi

Nell'esempio seguente viene chiamato il metodo TryParse(String, NumberStyles, IFormatProvider, UInt32) con una serie di stringhe e valori NumberStyles diversi.The following example calls the TryParse(String, NumberStyles, IFormatProvider, UInt32) method with a number of different strings and NumberStyles values.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string numericString;
      NumberStyles styles;
      
      numericString = "2106034";
      styles = NumberStyles.Integer;
      CallTryParse(numericString, styles);
      
      numericString = "-10603";
      styles = NumberStyles.None;
      CallTryParse(numericString, styles);
      
      numericString = "29103674.00";
      styles = NumberStyles.Integer | NumberStyles.AllowDecimalPoint;
      CallTryParse(numericString, styles);
      
      numericString = "10345.72";
      styles = NumberStyles.Integer | NumberStyles.AllowDecimalPoint;
      CallTryParse(numericString, styles);

      numericString = "41792210E-01";
      styles = NumberStyles.Integer | NumberStyles.AllowExponent;
      CallTryParse(numericString, styles); 
      
      numericString = "9112E-01";
      CallTryParse(numericString, styles);
          
      numericString = "312E01";
      CallTryParse(numericString, styles); 
      
      numericString = "FFC86DA1";
      CallTryParse(numericString, NumberStyles.HexNumber);
      
      numericString = "0x8F8C";
      CallTryParse(numericString, NumberStyles.HexNumber);
   }
   
   private static void CallTryParse(string stringToConvert, NumberStyles styles)
   {
      uint number;
      bool result = UInt32.TryParse(stringToConvert, styles, 
                                   CultureInfo.InvariantCulture, out number);
      if (result)
         Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number);
      else
         Console.WriteLine("Attempted conversion of '{0}' failed.", 
                           Convert.ToString(stringToConvert));
   }
}
// The example displays the following output:
//       Converted '2106034' to 2106034.
//       Attempted conversion of '-10603' failed.
//       Converted '29103674.00' to 29103674.
//       Attempted conversion of '10345.72' failed.
//       Converted '41792210E-01' to 4179221.
//       Attempted conversion of '9112E-01' failed.
//       Converted '312E01' to 3120.
//       Converted 'FFC86DA1' to 4291325345.
//       Attempted conversion of '0x8F8C' failed.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim numericString As String
      Dim styles As NumberStyles
      
      numericString = "2106034"
      styles = NumberStyles.Integer
      CallTryParse(numericString, styles)
      
      numericString = "-10603"
      styles = NumberStyles.None
      CallTryParse(numericString, styles)
      
      numericString = "29103674.00"
      styles = NumberStyles.Integer Or NumberStyles.AllowDecimalPoint
      CallTryParse(numericString, styles)
      
      numericString = "10345.72"
      styles = NumberStyles.Integer Or NumberStyles.AllowDecimalPoint
      CallTryParse(numericString, styles)

      numericString = "41792210E-01"
      styles = NumberStyles.Integer Or NumberStyles.AllowExponent
      CallTryParse(numericString, styles) 
      
      numericString = "9112E-01"
      CallTryParse(numericString, styles)
          
      numericString = "312E01"
      CallTryParse(numericString, styles) 
      
      numericString = "FFC86DA1"
      CallTryParse(numericString, NumberStyles.HexNumber)
      
      numericString = "0x8F8C"
      CallTryParse(numericString, NumberStyles.HexNumber)
   End Sub
   
   Private Sub CallTryParse(stringToConvert As String, styles AS NumberStyles)
      Dim number As UInteger
      Dim result As Boolean = UInt32.TryParse(stringToConvert, styles, _
                                              CultureInfo.InvariantCulture, number)
      If result Then
         Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, number)
      Else
         Console.WriteLine("Attempted conversion of '{0}' failed.", _
                           Convert.ToString(stringToConvert))
      End If                                                                           
   End Sub
End Module
' The example displays the following output to the console:
'       Converted '2106034' to 2106034.
'       Attempted conversion of '-10603' failed.
'       Converted '29103674.00' to 29103674.
'       Attempted conversion of '10345.72' failed.
'       Converted '41792210E-01' to 4179221.
'       Attempted conversion of '9112E-01' failed.
'       Converted '312E01' to 3120.
'       Converted 'FFC86DA1' to 4291325345.
'       Attempted conversion of '0x8F8C' failed.

Commenti

Il metodo TryParse(String, NumberStyles, IFormatProvider, UInt32) è analogo al metodo Parse(String, NumberStyles, IFormatProvider), ad eccezione del fatto che non genera un'eccezione se la conversione non riesce.The TryParse(String, NumberStyles, IFormatProvider, UInt32) method is like the Parse(String, NumberStyles, IFormatProvider) method, except that it does not throw an exception if the conversion fails. Questo metodo elimina la necessità di utilizzare la gestione delle eccezioni per testare un FormatException se s non è valido e non può essere analizzato correttamente.This method eliminates the need to use exception handling to test for a FormatException if s is invalid and cannot be parsed successfully.

Il parametro style definisce gli elementi di stile, ad esempio uno spazio vuoto o un segno positivo o negativo, che sono consentiti nel parametro s per l'esito positivo dell'operazione di analisi.The style parameter defines the style elements (such as white space or a positive or negative sign) that are allowed in the s parameter for the parse operation to succeed. Deve essere una combinazione di flag di bit dell'enumerazione NumberStyles.It must be a combination of bit flags from the NumberStyles enumeration. A seconda del valore di style, il parametro s può includere gli elementi seguenti:Depending on the value of style, the s parameter may include the following elements:

[WS] [$] [segno] [cifre,] cifre[. fractional_digits] [E [sign]exponential_digits] [WS][ws][$][sign][digits,]digits[.fractional_digits][E[sign]exponential_digits][ws]

Gli elementi tra parentesi quadre ([e]) sono facoltativi.Items in square brackets ([ and ]) are optional. In alternativa, se il parametro style include NumberStyles.AllowHexSpecifier, il parametro s può includere gli elementi seguenti:Or, if the style parameter includes NumberStyles.AllowHexSpecifier, the s parameter may include the following elements:

[WS] hexdigits[WS][ws]hexdigits[ws]

La tabella seguente descrive i singoli elementi.The following table describes each element.

ElementoElement DescrizioneDescription
wsws Spazi vuoti facoltativi.Optional white space. Gli spazi vuoti possono essere visualizzati all'inizio di s se style include il flag NumberStyles.AllowLeadingWhite o alla fine del s se style include il flag di NumberStyles.AllowTrailingWhite.White space can appear at the start of s if style includes the NumberStyles.AllowLeadingWhite flag, or at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ Simbolo di valuta specifico delle impostazioni cultura.A culture-specific currency symbol. La posizione nella stringa è definita dalla proprietà CurrencyPositivePattern dell'oggetto NumberFormatInfo restituito dal metodo GetFormat del parametro provider.Its position in the string is defined by the CurrencyPositivePattern property of the NumberFormatInfo object returned by the GetFormat method of the provider parameter. Il simbolo di valuta può essere visualizzato in s se style include il flag di NumberStyles.AllowCurrencySymbol.The currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Segno facoltativo.An optional sign. Il segno può essere visualizzato all'inizio di s se style include il flag NumberStyles.AllowLeadingSign e può comparire alla fine del s se style include il flag di NumberStyles.AllowTrailingSign.The sign can appear at the start of s if style includes the NumberStyles.AllowLeadingSign flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingSign flag. Le parentesi possono essere utilizzate in s per indicare un valore negativo se style include il flag di NumberStyles.AllowParentheses.Parentheses can be used in s to indicate a negative value if style includes the NumberStyles.AllowParentheses flag. Tuttavia, se è presente il segno negativo, s possibile rappresentare solo il valore zero affinché l'operazione di analisi abbia esito positivo.However, if the negative sign is present, s can only represent the value zero for the parse operation to succeed.
cifredigits Sequenza di cifre comprese tra 0 e 9.A sequence of digits from 0 through 9.
,, Separatore di gruppi specifico delle impostazioni cultura.A culture-specific group separator. Il separatore di gruppo delle impostazioni cultura specificate da provider può essere visualizzato in s se style include il flag NumberStyles.AllowThousands.The group separator of the culture specified by provider can appear in s if style includes the NumberStyles.AllowThousands flag.
.. Simbolo di virgola decimale specifico delle impostazioni cultura.A culture-specific decimal point symbol. Il simbolo del separatore decimale delle impostazioni cultura specificate da provider può essere visualizzato in s se style include il flag NumberStyles.AllowDecimalPoint.The decimal point symbol of the culture specified by provider can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Una o più occorrenze della cifra 0.One or more occurrences of the digit 0. Le cifre frazionarie possono essere visualizzate in s solo se style include il flag di NumberStyles.AllowDecimalPoint.Fractional digits can appear in s only if style includes the NumberStyles.AllowDecimalPoint flag.
EE Il carattere "e" o "E", che indica che il valore è rappresentato in notazione esponenziale (scientifica).The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. Il parametro s può rappresentare un numero nella notazione esponenziale se style include il flag di NumberStyles.AllowExponent.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits Sequenza di cifre comprese tra 0 e 9.A sequence of digits from 0 through 9. Il parametro s può rappresentare un numero nella notazione esponenziale se style include il flag di NumberStyles.AllowExponent.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits Sequenza di cifre esadecimali da 0 a f o da 0 a F.A sequence of hexadecimal digits from 0 through f, or 0 through F.

Nota

Qualsiasi carattere di terminazione NUL (U + 0000) in s viene ignorato dall'operazione di analisi, indipendentemente dal valore dell'argomento style.Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

Una stringa con solo cifre decimali (che corrisponde al flag di NumberStyles.None) viene sempre analizzata correttamente.A string with decimal digits only (which corresponds to the NumberStyles.None flag) always parses successfully. La maggior parte dei membri NumberStyles rimanenti controllano gli elementi che possono essere presenti, ma non devono essere presenti, in questa stringa di input.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in this input string. Nella tabella seguente viene indicato il modo in cui i singoli membri del NumberStyles influiscono sugli elementi che possono essere presenti nel s.The following table indicates how individual NumberStyles members affect the elements that may be present in s.

Valori NumberStyles non compositiNon-composite NumberStyles values Elementi consentiti in value oltre a cifreElements permitted in value in addition to digits
None Solo cifre decimali.Decimal digits only.
AllowDecimalPoint Separatore decimale (.) e fractional_digits elementi.The decimal point (.) and fractional_digits elements. Tuttavia, fractional_digits deve essere costituito solo da una o più cifre 0 oppure il metodo restituisce false.However, fractional_digits must consist of only one or more 0 digits, or the method returns false.
AllowExponent Il carattere "e" o "E", che indica la notazione esponenziale, insieme a exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits. Se s rappresenta un numero nella notazione esponenziale, non può avere un componente frazionario diverso da zero.If s represents a number in exponential notation, it cannot have a non-zero, fractional component.
AllowLeadingWhite Elemento WS all'inizio della s.The ws element at the start of s.
AllowTrailingWhite Elemento WS alla fine del s.The ws element at the end of s.
AllowLeadingSign Elemento del segno prima delle cifre.The sign element before digits.
AllowTrailingSign Elemento del segno dopo le cifre.The sign element after digits.
AllowParentheses Elemento del segno sotto forma di parentesi che racchiudono un valore numerico pari a zero.The sign element in the form of parentheses enclosing a zero numeric value.
AllowThousands Elemento del separatore di gruppi (,).The group separator (,) element.
AllowCurrencySymbol Elemento Currency ($).The currency ($) element.
Currency Tutti gli elementi.All elements. Tuttavia, s non può rappresentare un numero esadecimale o un numero in notazione esponenziale.However, s cannot represent a hexadecimal number or a number in exponential notation.
Float Elemento WS all'inizio o alla fine del s, firmare all'inizio di se il simbolo del separatore decimale (.).The ws element at the start or end of s, sign at the start of s, and the decimal point (.) symbol. Il parametro s può utilizzare anche la notazione esponenziale.The s parameter can also use exponential notation.
Number Elementi WS, Sign, separatore di gruppi (,) e separatore decimale (.).The ws, sign, group separator (,), and decimal point (.) elements.
Any Tutti gli elementi.All elements. Tuttavia, s non può rappresentare un numero esadecimale.However, s cannot represent a hexadecimal number.

Se viene usato il flag di NumberStyles.AllowHexSpecifier, s deve essere un valore esadecimale.If the NumberStyles.AllowHexSpecifier flag is used, s must be a hexadecimal value. Gli unici altri flag che possono essere presenti nel style sono NumberStyles.AllowLeadingWhite e NumberStyles.AllowTrailingWhite.The only other flags that can be present in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. L'enumerazione NumberStyles presenta uno stile composito, HexNumber, che include entrambi i flag di spazio vuoto.(The NumberStyles enumeration has a composite style, HexNumber, that includes both white-space flags.)

Nota

Se s è la rappresentazione di stringa di un numero esadecimale, non può essere preceduta da alcuna decorazione, ad esempio 0x o &h, che lo differenzia come numero esadecimale.If s is the string representation of a hexadecimal number, it cannot be preceded by any decoration (such as 0x or &h) that differentiates it as a hexadecimal number. In questo modo la conversione non riesce.This causes the conversion to fail.

Il parametro provider è un'implementazione di IFormatProvider.The provider parameter is an IFormatProvider implementation. Il metodo GetFormat restituisce un oggetto NumberFormatInfo che fornisce informazioni specifiche delle impostazioni cultura relative al formato di s.Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. Il provider parametro può essere uno dei seguenti:The provider parameter can be any one of the following:

  • Oggetto CultureInfo che rappresenta le impostazioni cultura che forniscono informazioni di formattazione.A CultureInfo object that represents the culture that supplies formatting information. Il metodo GetFormat restituisce l'oggetto NumberFormatInfo che fornisce informazioni sulla formattazione numerica per tali impostazioni cultura.Its GetFormat method returns the NumberFormatInfo object that provides numeric formatting information for that culture.

  • Oggetto NumberFormatInfo che fornisce informazioni sulla formattazione numerica.A NumberFormatInfo object that provides numeric formatting information. (L'implementazione di GetFormat restituisce solo se stessa).(Its implementation of GetFormat just returns itself.)

  • Oggetto personalizzato che implementa IFormatProvider.A custom object that implements IFormatProvider. Il metodo GetFormat crea un'istanza di e restituisce l'oggetto NumberFormatInfo che fornisce informazioni sulla formattazione.Its GetFormat method instantiates and returns the NumberFormatInfo object that provides formatting information.

Se provider è null, viene utilizzato l'oggetto NumberFormatInfo per le impostazioni cultura correnti.If provider is null, the NumberFormatInfo object for the current culture is used.

Vedi anche

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, UInt32)

Importante

Questa API non è conforme a CLS.

Tenta di convertire la rappresentazione in forma di intervallo di un numero in uno stile e in un formato specifico delle impostazioni cultura specificati nel relativo intero senza segno a 32 bit equivalente.Tries to convert the span representation of a number in a specified style and culture-specific format to its 32-bit unsigned integer equivalent. Un valore restituito indica se la conversione è riuscita o meno.A return value indicates whether the conversion succeeded or failed.

public:
 static bool TryParse(ReadOnlySpan<char> s, System::Globalization::NumberStyles style, IFormatProvider ^ provider, [Runtime::InteropServices::Out] System::UInt32 % result);
[System.CLSCompliant(false)]
public static bool TryParse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style, IFormatProvider provider, out uint result);
static member TryParse : ReadOnlySpan<char> * System.Globalization.NumberStyles * IFormatProvider * uint32 -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), style As NumberStyles, provider As IFormatProvider, ByRef result As UInteger) As Boolean

Parametri

s
ReadOnlySpan<Char>

Intervallo contenente i caratteri che rappresentano il numero da convertire.A span containing the characters that represent the number to convert. L'intervallo viene interpretato usando lo stile specificato dal parametro style.The span is interpreted by using the style specified by the style parameter.

style
NumberStyles

Combinazione bit per bit di valori di enumerazione che indica il formato consentito di s.A bitwise combination of enumeration values that indicates the permitted format of s. Un valore tipico da specificare è Integer.A typical value to specify is Integer.

provider
IFormatProvider

Oggetto che fornisce informazioni di formattazione specifiche delle impostazioni cultura relativamente a s.An object that supplies culture-specific formatting information about s.

result
UInt32

Quando questo metodo viene restituito, contiene il valore intero senza segno a 32 bit equivalente al numero contenuto in s, se la conversione riesce oppure zero se la conversione non riesce.When this method returns, contains the 32-bit unsigned integer value equivalent to the number contained in s, if the conversion succeeded, or zero if the conversion failed. La conversione non viene eseguita se il parametro s è null o Empty, non è in un formato conforme a style o rappresenta un numero minore di MinValue o maggiore di MaxValue.The conversion fails if the s parameter is null or Empty, is not in a format compliant with style, or represents a number that is less than MinValue or greater than MaxValue. Questo parametro viene passato non inizializzato. Qualsiasi valore fornito in origine in result verrà sovrascritto.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Restituisce

true se s è stato convertito correttamente; in caso contrario, false.true if s was converted successfully; otherwise, false.

Attributi

Si applica a