Single.TryParse Single.TryParse Single.TryParse Single.TryParse Method

Definição

Converte a representação da cadeia de caracteres de um número no número de ponto flutuante de precisão simples equivalente.Converts the string representation of a number to its single-precision floating-point number equivalent. Um valor de retorno indica se a conversão foi bem-sucedida ou falhou.A return value indicates whether the conversion succeeded or failed.

Sobrecargas

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Single) TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Single) TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Single) TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Single)
TryParse(String, Single) TryParse(String, Single) TryParse(String, Single) TryParse(String, Single)

Converte a representação da cadeia de caracteres de um número no número de ponto flutuante de precisão simples equivalente.Converts the string representation of a number to its single-precision floating-point number equivalent. Um valor de retorno indica se a conversão foi bem-sucedida ou falhou.A return value indicates whether the conversion succeeded or failed.

TryParse(ReadOnlySpan<Char>, Single) TryParse(ReadOnlySpan<Char>, Single) TryParse(ReadOnlySpan<Char>, Single) TryParse(ReadOnlySpan<Char>, Single)
TryParse(String, NumberStyles, IFormatProvider, Single) TryParse(String, NumberStyles, IFormatProvider, Single) TryParse(String, NumberStyles, IFormatProvider, Single) TryParse(String, NumberStyles, IFormatProvider, Single)

Converte a representação de cadeia de caracteres de um número em um estilo e formato específico da cultura especificados em seu equivalente de número de ponto flutuante de precisão simples.Converts the string representation of a number in a specified style and culture-specific format to its single-precision floating-point number equivalent. Um valor de retorno indica se a conversão foi bem-sucedida ou falhou.A return value indicates whether the conversion succeeded or failed.

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

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

Parâmetros

Retornos

TryParse(String, Single) TryParse(String, Single) TryParse(String, Single) TryParse(String, Single)

Converte a representação da cadeia de caracteres de um número no número de ponto flutuante de precisão simples equivalente.Converts the string representation of a number to its single-precision floating-point number equivalent. Um valor de retorno indica se a conversão foi bem-sucedida ou falhou.A return value indicates whether the conversion succeeded or failed.

public:
 static bool TryParse(System::String ^ s, [Runtime::InteropServices::Out] float % result);
public static bool TryParse (string s, out float result);
static member TryParse : string *  -> bool
Public Shared Function TryParse (s As String, ByRef result As Single) As Boolean

Parâmetros

s
String String String String

Uma cadeia de caracteres que representa um número a ser convertido.A string representing a number to convert.

result
Single Single Single Single

Quando esse método é retornado, ele contém o número de ponto flutuante de precisão simples equivalente ao valor numérico ou símbolo contido em s, caso a conversão seja bem-sucedida ou zero, caso a conversão falhe.When this method returns, contains single-precision floating-point number equivalent to the numeric value or symbol contained in s, if the conversion succeeded, or zero if the conversion failed. A conversão falhará se o parâmetro s for null ou Empty, não for um número em um formato válido ou representar um número menor que MinValue ou maior que MaxValue.The conversion fails if the s parameter is null or Empty, is not a number in a valid format, or represents a number less than MinValue or greater than MaxValue. Este parâmetro é passado não inicializado; qualquer valor fornecido originalmente em result será substituído.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Retornos

true caso s tenha sido convertido com êxito; do contrário, false.true if s was converted successfully; otherwise, false.

Exemplos

O exemplo a seguir usa TryParse(String, Single) o método para converter as representações de cadeia de caracteres de Single valores numéricos em valores.The following example uses the TryParse(String, Single) method to convert the string representations of numeric values to Single values. Ele pressupõe que en-US é a cultura atual.It assumes that en-US is the current culture.

string value;
float number;

// Parse a floating-point value with a thousands separator.
value = "1,643.57";
if (Single.TryParse(value, out number))
   Console.WriteLine(number);
else
   Console.WriteLine("Unable to parse '{0}'.", value);      

// Parse a floating-point value with a currency symbol and a 
// thousands separator.
value = "$1,643.57";
if (Single.TryParse(value, out number))
   Console.WriteLine(number);
else
   Console.WriteLine("Unable to parse '{0}'.", value);   

// Parse value in exponential notation.
value = "-1.643e6";
if (Single.TryParse(value, out number))
   Console.WriteLine(number);
else
   Console.WriteLine("Unable to parse '{0}'.", value);   

// Parse a negative integer value.
value = "-168934617882109132";
if (Single.TryParse(value, out number))
   Console.WriteLine(number);
else
   Console.WriteLine("Unable to parse '{0}'.", value);   
// The example displays the following output:
//       1643.57
//       Unable to parse '$1,643.57'.
//       -164300
//       -1.68934617882109E+17
Dim value As String
Dim number As Single

' Parse a floating-point value with a thousands separator.
value = "1,643.57"
If Single.TryParse(value, number) Then
   Console.WriteLine(number)
Else
   Console.WriteLine("Unable to parse '{0}'.", value)      
End If   

' Parse a floating-point value with a currency symbol and a 
' thousands separator.
value = "$1,643.57"
If Single.TryParse(value, number) Then
   Console.WriteLine(number)  
Else
   Console.WriteLine("Unable to parse '{0}'.", value)   
End If

' Parse value in exponential notation.
value = "-1.643e6"
If Single.TryParse(value, number)
   Console.WriteLine(number)
Else
   Console.WriteLine("Unable to parse '{0}'.", value)   
End If

' Parse a negative integer number.
value = "-168934617882109132"
If Single.TryParse(value, number)
   Console.WriteLine(number)
Else
   Console.WriteLine("Unable to parse '{0}'.", value)   
End If
' The example displays the following output:
'       1643.57
'       Unable to parse '$1,643.57'.
'       -1643000
'       -1.68934617882109E+17

Comentários

Essa sobrecarga difere do Single.Parse(String) método retornando um valor booliano que indica se a operação de análise teve êxito em vez de retornar o valor numérico analisado.This overload differs from the Single.Parse(String) method by returning a Boolean value that indicates whether the parse operation succeeded instead of returning the parsed numeric value. Ele elimina a necessidade de usar a identificação de exceções para testar um FormatException caso esse s seja inválido e não possa ser analisado com êxito.It eliminates the need to use exception handling to test for a FormatException in the event that s is invalid and cannot be successfully parsed.

O s parâmetro pode conter PositiveInfinitySymbol, NegativeInfinitySymbol, NaNSymbol (a comparação de cadeia de caracteres diferencia maiúsculas de minúsculas) ou uma cadeia de caracteres no formato:The s parameter can contain PositiveInfinitySymbol, NegativeInfinitySymbol, NaNSymbol (the string comparison is case-sensitive), or a string of the form:

[ws][sign][integral-digits,]integral-digits[.[fractional-digits]][e[sign]exponential-digits][ws][ws][sign][integral-digits,]integral-digits[.[fractional-digits]][e[sign]exponential-digits][ws]

Os elementos entre colchetes são opcionais.Elements in square brackets are optional. A tabela a seguir descreve cada elemento.The following table describes each element.

ElementoElement DescriçãoDescription
wsws Uma série de caracteres de espaço em branco.A series of white-space characters.
signsign Um símbolo de sinal negativo ou de sinal positivo.A negative sign or positive sign symbol.
integral-digitsintegral-digits Uma série de caracteres numéricos que variam de 0 a 9 que especificam a parte integral do número.A series of numeric characters ranging from 0 to 9 that specify the integral part of the number. Os dígitos integrais podem estar ausentes caso sejam dígitos fracionários.Integral-digits can be absent if there are fractional-digits.
,, Um símbolo de separador do grupo específico da cultura.A culture-specific group separator symbol.
.. Um símbolo de vírgula decimal específico de cultura.A culture-specific decimal point symbol.
fractional-digitsfractional-digits Uma série de caracteres numéricos que variam de 0 a 9 que especificam a parte fracionária do número.A series of numeric characters ranging from 0 to 9 that specify the fractional part of the number.
EE Um caractere maiúsculo ou minúsculo ' e ', que indica a notação exponencial (científica).An uppercase or lowercase character 'e', that indicates exponential (scientific) notation.
exponential-digitsexponential-digits Uma série de caracteres numéricos variando de 0 a 9 que especificam um expoente.A series of numeric characters ranging from 0 to 9 that specify an exponent.

O parâmetro s é interpretado usando-se uma combinação dos sinalizadores NumberStyles.Float e NumberStyles.AllowThousands.The s parameter is interpreted using a combination of the NumberStyles.Float and NumberStyles.AllowThousands flags. Isso significa que o espaço em branco e os separadores de milhares são permitidos, mas os símbolos de moeda não.This means that white space and thousands separators are allowed but currency symbols are not. Para definir explicitamente os elementos (como símbolos de moeda, separadores de milhares e espaços em branco) que podem estar spresentes no, TryParse(String, NumberStyles, IFormatProvider, Single) use a sobrecarga do método.To explicitly define the elements (such as currency symbols, thousands separators, and white space) that can be present in s, use the TryParse(String, NumberStyles, IFormatProvider, Single) method overload.

O parâmetro s é analisado usando-se as informações de formatação em um objeto NumberFormatInfo que é inicializado para a cultura do sistema atual.The s parameter is parsed using the formatting information in a NumberFormatInfo object that is initialized for the current system culture. Para obter mais informações, consulte NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo. Para analisar uma cadeia de caracteres usando as informações de formatação de alguma outra cultura especificada TryParse(String, NumberStyles, IFormatProvider, Single) , use a sobrecarga do método.To parse a string using the formatting information of some other specified culture, use the TryParse(String, NumberStyles, IFormatProvider, Single) method overload.

Normalmente, se você passa ao método Single.TryParse, uma cadeia de caracteres criada chamando-se o método Single.ToString, o valor Single original é retornado.Ordinarily, if you pass the Single.TryParse method a string that is created by calling the Single.ToString method, the original Single value is returned. No entanto, por conta de uma perda de precisão, os valores talvez não sejam iguais.However, because of a loss of precision, the values may not be equal.

Caso um separador esteja no parâmetro s durante uma operação de análise e a moeda aplicável ou os separadores de casa decimal e grupo sejam iguais, a operação de análise pressupõe que o separador seja um separador decimal, e não um separador de grupo.If a separator is encountered in the s parameter during a parse operation, and the applicable currency or number decimal and group separators are the same, the parse operation assumes that the separator is a decimal separator rather than a group separator. Para obter mais informações sobre separadores, consulte CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparator e NumberGroupSeparator.For more information about separators, see CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparator, and NumberGroupSeparator.

Veja também

TryParse(ReadOnlySpan<Char>, Single) TryParse(ReadOnlySpan<Char>, Single) TryParse(ReadOnlySpan<Char>, Single) TryParse(ReadOnlySpan<Char>, Single)

public:
 static bool TryParse(ReadOnlySpan<char> s, [Runtime::InteropServices::Out] float % result);
public static bool TryParse (ReadOnlySpan<char> s, out float result);
static member TryParse : ReadOnlySpan<char> *  -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), ByRef result As Single) As Boolean

Parâmetros

Retornos

TryParse(String, NumberStyles, IFormatProvider, Single) TryParse(String, NumberStyles, IFormatProvider, Single) TryParse(String, NumberStyles, IFormatProvider, Single) TryParse(String, NumberStyles, IFormatProvider, Single)

Converte a representação de cadeia de caracteres de um número em um estilo e formato específico da cultura especificados em seu equivalente de número de ponto flutuante de precisão simples.Converts the string representation of a number in a specified style and culture-specific format to its single-precision floating-point number equivalent. Um valor de retorno indica se a conversão foi bem-sucedida ou falhou.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] float % result);
public static bool TryParse (string s, System.Globalization.NumberStyles style, IFormatProvider provider, out float result);
static member TryParse : string * System.Globalization.NumberStyles * IFormatProvider *  -> bool
Public Shared Function TryParse (s As String, style As NumberStyles, provider As IFormatProvider, ByRef result As Single) As Boolean

Parâmetros

s
String String String String

Uma cadeia de caracteres que representa um número a ser convertido.A string representing a number to convert.

style
NumberStyles NumberStyles NumberStyles NumberStyles

Um combinação bit a bit de valores de enumeração que indica o formato permitido de s.A bitwise combination of enumeration values that indicates the permitted format of s. Um valor típico para ser especificado é uma combinação de Float com AllowThousands.A typical value to specify is Float combined with AllowThousands.

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Um objeto que fornece informações de formatação específicas de cultura sobre s.An object that supplies culture-specific formatting information about s.

result
Single Single Single Single

Quando esse método é retornado, ele contém o número de ponto flutuante de precisão simples equivalente ao valor numérico ou símbolo contido em s, caso a conversão seja bem-sucedida ou zero, caso a conversão falhe.When this method returns, contains the single-precision floating-point number equivalent to the numeric value or symbol contained in s, if the conversion succeeded, or zero if the conversion failed. A conversão falhará se o parâmetro s for null ou Empty, não estiver em um formato compatível com style ou representar um número menor que MinValue ou maior que MaxValue, ou se style não for uma combinação válida de constantes enumeradas de NumberStyles.The conversion fails if the s parameter is null or Empty, is not in a format compliant with style, represents a number less than MinValue or greater than MaxValue, or if style is not a valid combination of NumberStyles enumerated constants. Este parâmetro é passado não inicializado; qualquer valor fornecido originalmente em result será substituído.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Retornos

true caso s tenha sido convertido com êxito; do contrário, false.true if s was converted successfully; otherwise, false.

Exceções

style não é um valor NumberStyles.style is not a NumberStyles value.

- ou --or- style é o valor AllowHexSpecifier.style is the AllowHexSpecifier value.

Exemplos

O exemplo a seguir demonstra o uso do Single.TryParse(String, NumberStyles, IFormatProvider, Single) método para analisar a representação de cadeia de caracteres de números que têm um estilo específico e são formatados usando as convenções de uma cultura específica.The following example demonstrates the use of the Single.TryParse(String, NumberStyles, IFormatProvider, Single) method to parse the string representation of numbers that have a particular style and are formatted using the conventions of a particular culture.

string value;
System.Globalization.NumberStyles style;
System.Globalization.CultureInfo culture;
float number;

// Parse currency value using en-GB culture.
value = "£1,097.63";
style = System.Globalization.NumberStyles.Number | 
        System.Globalization.NumberStyles.AllowCurrencySymbol;
culture = System.Globalization.CultureInfo.CreateSpecificCulture("en-GB");
if (Single.TryParse(value, style, culture, out number))
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
else
   Console.WriteLine("Unable to convert '{0}'.", value);

value = "1345,978";
style = System.Globalization.NumberStyles.AllowDecimalPoint;
culture = System.Globalization.CultureInfo.CreateSpecificCulture("fr-FR");
if (Single.TryParse(value, style, culture, out number))
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
else
   Console.WriteLine("Unable to convert '{0}'.", value);

value = "1.345,978";
style = System.Globalization.NumberStyles.AllowDecimalPoint | 
        System.Globalization.NumberStyles.AllowThousands;
culture = System.Globalization.CultureInfo.CreateSpecificCulture("es-ES");
if (Single.TryParse(value, style, culture, out number))
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
else
   Console.WriteLine("Unable to convert '{0}'.", value);

value = "1 345,978";
if (Single.TryParse(value, style, culture, out number))
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
else
   Console.WriteLine("Unable to convert '{0}'.", value);
// The example displays the following output:
//       Converted '£1,097.63' to 1097.63.
//       Converted '1345,978' to 1345.978.
//       Converted '1.345,978' to 1345.978.
//       Unable to convert '1 345,978'.
Dim value As String
Dim style As System.Globalization.NumberStyles
Dim culture As System.Globalization.CultureInfo
Dim number As Single

' Parse currency value using en-GB culture.
value = "£1,097.63"
style = System.Globalization.NumberStyles.Number Or _
        System.Globalization.NumberStyles.AllowCurrencySymbol
culture = System.Globalization.CultureInfo.CreateSpecificCulture("en-GB")
If Single.TryParse(value, style, culture, number) Then
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Else
   Console.WriteLine("Unable to convert '{0}'.", value)
End If    

value = "1345,978"
style = System.Globalization.NumberStyles.AllowDecimalPoint
culture = System.Globalization.CultureInfo.CreateSpecificCulture("fr-FR")
If Single.TryParse(value, style, culture, number) Then
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Else
   Console.WriteLine("Unable to convert '{0}'.", value)
End If    

value = "1.345,978"
style = System.Globalization.NumberStyles.AllowDecimalPoint Or _
        System.Globalization.NumberStyles.AllowThousands
culture = System.Globalization.CultureInfo.CreateSpecificCulture("es-ES")
If Single.TryParse(value, style, culture, number) Then
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Else
   Console.WriteLine("Unable to convert '{0}'.", value)
End If    

value = "1 345,978"
If Single.TryParse(value, style, culture, number) Then
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Else
   Console.WriteLine("Unable to convert '{0}'.", value)
End If    
' The example displays the following output:
'       Converted '£1,097.63' to 1097.63.
'       Converted '1345,978' to 1345.978.
'       Converted '1.345,978' to 1345.978.
'       Unable to convert '1 345,978'.

Comentários

Essa sobrecarga difere do Parse(String, NumberStyles, IFormatProvider) método retornando um valor booliano que indica se a operação de análise teve êxito em vez de retornar o valor numérico analisado.This overload differs from the Parse(String, NumberStyles, IFormatProvider) method by returning a Boolean value that indicates whether the parse operation succeeded instead of returning the parsed numeric value. Ele elimina a necessidade de usar a identificação de exceções para testar um FormatException caso esse s seja inválido e não possa ser analisado com êxito.It eliminates the need to use exception handling to test for a FormatException in the event that s is invalid and cannot be successfully parsed.

O parâmetro style define o formato permitido do parâmetro s para que a operação de análise seja bem-sucedida.The style parameter defines the allowable format of the s parameter for the parse operation to succeed. Ele deve ser uma combinação de sinalizadores de bits da enumeração NumberStyles.It must be a combination of bit flags from the NumberStyles enumeration. Os seguintes membros NumberStyles não são suportados:The following NumberStyles members are not supported:

O s parâmetro pode conter PositiveInfinitySymbol, NegativeInfinitySymbol provider, NaNSymbol para a cultura indicada por.The s parameter can contain PositiveInfinitySymbol, NegativeInfinitySymbol, NaNSymbol for the culture indicated by provider. Além disso, dependendo do valor de style, o s parâmetro pode incluir os seguintes elementos:In addition, depending on the value of style, the s parameter may include the following elements:

[ws] [$] [sign][integral-digits,]integral-digits[.fractional-digits][e[sign]exponential-digits][ws][ws] [$] [sign][integral-digits,]integral-digits[.fractional-digits][e[sign]exponential-digits][ws]

Os elementos entre colchetes ([ e ]) são opcionais.Elements in square brackets ([ and ]) are optional. A tabela a seguir descreve cada elemento.The following table describes each element.

ElementoElement DescriçãoDescription
wsws Espaço em branco opcional.Optional white space. O espaço em branco pode aparecer no início s de style se incluir NumberStyles.AllowLeadingWhite o sinalizador.White space can appear at the beginning of s if style includes the NumberStyles.AllowLeadingWhite flag. Ele pode aparecer no final de s se style incluir o NumberStyles.AllowTrailingWhite sinalizador.It can appear at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ Um símbolo de moeda específico de cultura.A culture-specific currency symbol. Sua posição na cadeia de caracteres é definida pelas NumberFormatInfo.CurrencyNegativePattern propriedades NumberFormatInfo.CurrencyPositivePattern ou do NumberFormatInfo objeto retornado pelo IFormatProvider.GetFormat método do provider parâmetro.Its position in the string is defined by the NumberFormatInfo.CurrencyNegativePattern or NumberFormatInfo.CurrencyPositivePattern properties of the NumberFormatInfo object returned by the IFormatProvider.GetFormat method of the provider parameter. O símbolo de moeda pode ser exibido em s caso style inclua o sinalizador NumberStyles.AllowCurrencySymbol.The currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Um sinal opcional.An optional sign. O sinal pode ser exibido no início de s caso style inclua o sinalizador NumberStyles.AllowLeadingSign e ele pode ser exibido no final de s caso style inclua o sinalizador NumberStyles.AllowTrailingSign.The sign can appear at the beginning 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. Os parênteses podem ser usados em s para indicar um valor negativo caso style inclua o sinalizador NumberStyles.AllowParentheses.Parentheses can be used in s to indicate a negative value if style includes the NumberStyles.AllowParentheses flag.
integral-digitsintegral-digits Uma série de dígitos que varia de 0 a 9 que especificam a parte integral do número.A series of digits ranging from 0 to 9 that specify the integral part of the number. Os dígitos integrais podem estar ausentes caso sejam dígitos fracionários.Integral-digits can be absent if there are fractional-digits.
,, Um símbolo de separador de milhares específico da cultura.A culture-specific thousands separator symbol. O símbolo do separador do grupo da cultura atual pode ser exibido em s caso style inclua o sinalizador NumberStyles.AllowThousands.The current culture's thousands separator symbol can appear in s if style includes the NumberStyles.AllowThousands flag.
.. Um símbolo de vírgula decimal específico de cultura.A culture-specific decimal point symbol. O símbolo da vírgula decimal da cultura atual pode ser exibido em s caso style inclua o sinalizador NumberStyles.AllowDecimalPoint.The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional-digitsfractional-digits Uma série de dígitos que varia de 0 a 9 que especificam a parte fracionária do número.A series of digits ranging from 0 to 9 that specify the fractional part of the number. Os dígitos fracionários podem ser exibidos em s caso style inclua o sinalizador NumberStyles.AllowDecimalPoint.Fractional digits can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
ee O caractere e ou e, que indica que s o pode representar um número usando notação exponencial.The e or E character, which indicates that s can represent a number using exponential notation. O s parâmetro pode representar um número em notação exponencial se o estilo NumberStyles.AllowExponent incluir o sinalizador.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential-digitsexponential-digits Uma série de dígitos que varia de 0 a 9 que especificam um expoente.A series of digits ranging from 0 to 9 that specify an exponent.

Observação

Todos os caracteres nul (U + 0000) de s encerramento são ignorados pela operação de análise, independentemente do valor style do argumento.Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

Uma cadeia de caracteres apenas com dígitos (que corresponde ao estilo NumberStyles.None ) sempre é analisada com êxito.A string with digits only (which corresponds to the NumberStyles.None style) always parses successfully. Os membros System.Globalization.NumberStyles restantes controlam os elementos que podem estar, mas que não precisam estar presentes na cadeia de caracteres de entrada.The remaining System.Globalization.NumberStyles members control elements that may be but are not required to be present in the input string. A tabela a seguir indica como os sinalizadores individuais NumberStyles afetam os elementos que podem estar presentes em s.The following table indicates how individual NumberStyles flags affect the elements that may be present in s.

Valor NumberStylesNumberStyles value Elementos permitidos em s além de dígitosElements permitted in s in addition to digits
None Apenas o elemento de dígitos inteiros .The integral-digits element only.
AllowDecimalPoint O elemento de linguagem .The . e os elementos fracionários de dígitos .and fractional-digits elements.
AllowExponent O parâmetro s também pode usar notação exponencial.The s parameter can also use exponential notation. Esse sinalizador, por si só, dá suporte a valores no formato integral-dígitosEexponencial-dígitos; sinalizadores adicionais são necessários para analisar com êxito as cadeias de caracteres na notação exponencial com esses elementos como sinais positivos ou negativos e símbolos de ponto decimal.This flag by itself supports values in the form integral-digitsEexponential-digits; additional flags are needed to successfully parse strings in exponential notation with such elements as positive or negative signs and decimal point symbols.
AllowLeadingWhite O elemento ws no início de s.The ws element at the beginning of s.
AllowTrailingWhite O elemento ws no final de s.The ws element at the end of s.
AllowLeadingSign O elemento sinal no início de s.The sign element at the beginning of s.
AllowTrailingSign O elemento sinal no final de s.The sign element at the end of s.
AllowParentheses O elemento sinal na forma de parênteses que incluem o valor numérico.The sign element in the form of parentheses enclosing the numeric value.
AllowThousands O elemento , .The , element.
AllowCurrencySymbol O elemento é $.The $ element.
Currency Os.All. O parâmetro s não pode representar um número hexadecimal ou um número em notação exponencial.The s parameter cannot represent a hexadecimal number or a number in exponential notation.
Float O elemento WS no início ou no fim de s, assine o início de se o .The ws element at the beginning or end of s, sign at the beginning of s, and the . símbolo.symbol. O parâmetro s também pode usar notação exponencial.The s parameter can also use exponential notation.
Number Os wselementos sign,, separador de milhares (,) e ponto decimal (.).The ws, sign, thousands separator (,), and decimal point (.) elements.
Any Todos os estilos, exceto caso s não possa representar um número hexadecimal.All styles, except s cannot represent a hexadecimal number.

O provider parâmetro é uma IFormatProvider implementação cujo GetFormat método retorna um NumberFormatInfo objeto que fornece informações de formatação específicas de cultura.The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific formatting information. Quando o TryParse(String, NumberStyles, IFormatProvider, Single) método é invocado, ele chama provider o método GetFormat do parâmetro e passa a Type ele um objeto que NumberFormatInfo representa o tipo.When the TryParse(String, NumberStyles, IFormatProvider, Single) method is invoked, it calls the provider parameter's GetFormat method and passes it a Type object that represents the NumberFormatInfo type. Em GetFormat seguida, o método NumberFormatInfo retorna o objeto que fornece informações s sobre o formato do parâmetro.The GetFormat method then returns the NumberFormatInfo object that provides information about the format of the s parameter. Existem três maneiras de usar o parâmetro provider para fornecer informações de formatação personalizadas para a operação de análise:There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • É possível passar um objeto CultureInfo que representa a cultura que fornece informações de formatação.You can pass a CultureInfo object that represents the culture that supplies formatting information. O método GetFormat retorna o objeto NumberFormatInfo que fornece informações de formatação numérica para essa cultura.Its GetFormat method returns the NumberFormatInfo object that provides numeric formatting information for that culture.

  • É possível passar o objeto real NumberFormatInfo que fornece informações de formatação numérica.You can pass the actual NumberFormatInfo object that provides numeric formatting information. (Sua implementação de GetFormat retorna apenas ele próprio.)(Its implementation of GetFormat just returns itself.)

  • É possível passar um objeto personalizado que implementa IFormatProvider.You can pass a custom object that implements IFormatProvider. O método GetFormat cria uma instância e retorna o objeto NumberFormatInfo que fornece informações de formatação.Its GetFormat method instantiates and returns the NumberFormatInfo object that provides formatting information.

Se provider s NumberFormatInfo for null, a formatação de será interpretada com base no objeto da cultura atual.If provider is null, the formatting of s is interpreted based on the NumberFormatInfo object of the current culture.

Caso um separador esteja no parâmetro s durante uma operação de análise e a moeda aplicável ou os separadores de casa decimal e grupo sejam iguais, a operação de análise pressupõe que o separador seja um separador decimal, e não um separador de grupo.If a separator is encountered in the s parameter during a parse operation, and the applicable currency or number decimal and group separators are the same, the parse operation assumes that the separator is a decimal separator rather than a group separator. Para obter mais informações sobre separadores, consulte CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparator e NumberGroupSeparator.For more information about separators, see CurrencyDecimalSeparator, NumberDecimalSeparator, CurrencyGroupSeparator, and NumberGroupSeparator.

Veja também

Aplica-se a