SByte.TryParse Method

Definition

Converte a representação da cadeia de caracteres de um número no inteiro assinado de 8 dígitos equivalente.Converts the string representation of a number to its 8-bit signed integer equivalent. Um código de retorno indica se a conversão foi bem-sucedida ou falhou.A return code indicates whether the conversion succeeded or failed.

Overloads

TryParse(String, SByte)

Tenta converter a representação de cadeia de caracteres de um número em seu SByte equivalente e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the string representation of a number to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

TryParse(ReadOnlySpan<Char>, SByte)

Tenta converter a representação de intervalo de um número em seu SByte equivalente e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the span representation of a number to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

TryParse(String, NumberStyles, IFormatProvider, SByte)

Tenta converter a representação de cadeia de caracteres de um número em um estilo e formato específico à cultura especificados no equivalente SByte e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the string representation of a number in a specified style and culture-specific format to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

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

Tenta converter a representação de intervalo de um número em um formato específico da cultura e um estilo especificados em seu equivalente de SByte e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the span representation of a number in a specified style and culture-specific format to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

TryParse(String, SByte)

Important

This API is not CLS-compliant.

Tenta converter a representação de cadeia de caracteres de um número em seu SByte equivalente e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the string representation of a number to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

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

Parameters

s
String

Uma cadeia de caracteres que contém um número a ser convertido.A string that contains a number to convert.

result
SByte

Quando for retornado, esse método conterá o valor inteiro com sinal de 8 bits equivalente ao número contido em s se a conversão tiver sido bem-sucedida, ou zero se a conversão tiver falhado.When this method returns, contains the 8-bit signed integer value that is equivalent to the number 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 no formato correto 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 in the correct format, or represents a number that is 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.

Returns

Boolean

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

Attributes

Examples

O exemplo a seguir tenta converter as cadeias de caracteres em uma matriz para SByte valores chamando o método TryParse(String, SByte).The following example tries to convert the strings in an array to SByte values by calling the TryParse(String, SByte) method.

string[] numericStrings = {"-3.6", "12.8", "+16.7", "    3   ", "(17)", 
                           "-17", "+12", "18-", "987", "1,024", "  127 "};
sbyte number;
foreach (string numericString in numericStrings)
{
   if (sbyte.TryParse(numericString, out number)) 
      Console.WriteLine("Converted '{0}' to {1}.", numericString, number);
   else
      Console.WriteLine("Cannot convert '{0}' to an SByte.", numericString);
}
// The example displays the following output to the console:
//       Cannot convert '-3.6' to an SByte.
//       Cannot convert '12.8' to an SByte.
//       Cannot convert '+16.7' to an SByte.
//       Converted '    3   ' to 3.
//       Cannot convert '(17)' to an SByte.
//       Converted '-17' to -17.
//       Converted '+12' to 12.
//       Cannot convert '18-' to an SByte.
//       Cannot convert '987' to an SByte.
//       Cannot convert '1,024' to an SByte.
//       Converted '  127 ' to 127.
Dim numericStrings() As String = {"-3.6", "12.8", "+16.7", "    3   ", _
                                  "(17)", "-17", "+12", "18-", "987", _
                                  "1,024", "  127 "}
Dim number As SByte
For Each numericString As String In numericStrings
   If SByte.TryParse(numericString, number) Then
      Console.WriteLine("Converted '{0}' to {1}.", numericString, number)
   Else
      Console.WriteLine("Cannot convert '{0}' to an SByte.", numericString)
   End If      
Next
' The example displays the following output to the console:
'       Cannot convert '-3.6' to an SByte.
'       Cannot convert '12.8' to an SByte.
'       Cannot convert '+16.7' to an SByte.
'       Converted '    3   ' to 3.
'       Cannot convert '(17)' to an SByte.
'       Converted '-17' to -17.
'       Converted '+12' to 12.
'       Cannot convert '18-' to an SByte.
'       Cannot convert '987' to an SByte.
'       Cannot convert '1,024' to an SByte.
'       Converted '  127 ' to 127.

Remarks

O método SByte.TryParse(String, SByte) é como o método SByte.Parse(String), exceto que ele não lança uma exceção se a conversão falhar.The SByte.TryParse(String, SByte) method is like the SByte.Parse(String) method, except that it does not throw an exception if the conversion fails. Esse método elimina a necessidade de usar o tratamento de exceções para testar um FormatException se value for inválido e não puder ser analisado com êxito.This method eliminates the need to use exception handling to test for a FormatException if value is invalid and cannot be successfully parsed.

O parâmetro s deve ser a representação da cadeia de caracteres de um número decimal na seguinte forma:The s parameter should be the string representation of a decimal number in the following form:

[WS] [assinar] dígitos[WS][ws][sign]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.
signsign Um sinal opcional.An optional sign. Os caracteres de sinal válido são determinados pelas propriedades NumberFormatInfo.NegativeSign e NumberFormatInfo.PositiveSign da cultura atual.Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture.
digitsdigits Uma sequência de dígitos decimais que varia de 0 a 9.A sequence of decimal digits ranging from 0 to 9.

Note

A cadeia de caracteres especificada pelo parâmetro value não pode conter nenhum separador de grupo ou separador decimal e não pode ter uma parte decimal.The string specified by the value parameter cannot contain any group separators or decimal separator, and it cannot have a decimal portion.

O parâmetro s é interpretado usando-se o estilo NumberStyles.Integer.The s parameter is interpreted by using the NumberStyles.Integer style. Além dos dígitos decimais, apenas os espaço à esquerda e à direita com um sinal à esquerda são permitidos.In addition to the decimal digits, only leading and trailing spaces with a leading sign are allowed. Para definir explicitamente os elementos de estilo com as informações de formatação específicas de cultura que podem estar presentes no value, chame o método TryParse(String, NumberStyles, IFormatProvider, SByte).To explicitly define the style elements with the culture-specific formatting information that can be present in value, call the TryParse(String, NumberStyles, IFormatProvider, SByte) method.

O parâmetro s é analisado usando as informações de formatação em um objeto NumberFormatInfo para a cultura atual.The s parameter is parsed by using the formatting information in a NumberFormatInfo object for the current culture. Para obter mais informações, consulte NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo.

Essa sobrecarga interpreta todos os dígitos no parâmetro value como dígitos decimais.This overload interprets all digits in the value parameter as decimal digits. Para analisar a representação de cadeia de caracteres de um número hexadecimal, chame a sobrecarga de TryParse(String, NumberStyles, IFormatProvider, SByte) em vez disso.To parse the string representation of a hexadecimal number, call the TryParse(String, NumberStyles, IFormatProvider, SByte) overload instead.

See also

TryParse(ReadOnlySpan<Char>, SByte)

Important

This API is not CLS-compliant.

Tenta converter a representação de intervalo de um número em seu SByte equivalente e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the span representation of a number to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

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

Parameters

s
ReadOnlySpan<Char>

Um intervalo que contém os caracteres que representam o número a ser convertido.A span containing the characters representing the number to convert.

result
SByte

Quando for retornado, esse método conterá o valor inteiro com sinal de 8 bits equivalente ao número contido em s se a conversão tiver sido bem-sucedida, ou zero se a conversão tiver falhado.When this method returns, contains the 8-bit signed integer value that is equivalent to the number 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 no formato correto 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 in the correct format, or represents a number that is 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.

Returns

Boolean

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

Attributes

TryParse(String, NumberStyles, IFormatProvider, SByte)

Important

This API is not CLS-compliant.

CLS-compliant alternative
System.Int16.TryParse(String, Int16)

Tenta converter a representação de cadeia de caracteres de um número em um estilo e formato específico à cultura especificados no equivalente SByte e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the string representation of a number in a specified style and culture-specific format to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

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

Parameters

s
String

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

style
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 a ser especificado é Integer.A typical value to specify is Integer.

provider
IFormatProvider

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

result
SByte

Quando esse método for retornado, conterá o equivalente do valor inteiro com sinal de 8 bits do número contido em s se a conversão tiver sido bem-sucedida ou zero se a conversão tiver falhado.When this method returns, contains the 8-bit signed integer value equivalent to the number 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 em conformidade com style 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 in a format compliant with style, 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.

Returns

Boolean

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

Attributes

Exceptions

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

- ou --or- style não é uma combinação de valores AllowHexSpecifier e HexNumber.style is not a combination of AllowHexSpecifier and HexNumber values.

Examples

O exemplo a seguir chama o método TryParse(String, NumberStyles, IFormatProvider, SByte) com um número de valores de cadeia de caracteres e NumberStyles diferentes.The following example calls the TryParse(String, NumberStyles, IFormatProvider, SByte) method with a number of different string and NumberStyles values.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      string numericString;
      NumberStyles styles;
      
      numericString = "106";
      styles = NumberStyles.Integer;
      CallTryParse(numericString, styles);
      
      numericString = "-106";
      styles = NumberStyles.None;
      CallTryParse(numericString, styles);
      
      numericString = "103.00";
      styles = NumberStyles.Integer | NumberStyles.AllowDecimalPoint;
      CallTryParse(numericString, styles);
      
      numericString = "103.72";
      styles = NumberStyles.Integer | NumberStyles.AllowDecimalPoint;
      CallTryParse(numericString, styles);

      numericString = "10E-01";
      styles = NumberStyles.Integer | NumberStyles.AllowExponent;
      CallTryParse(numericString, styles); 
      
      numericString = "12E-01";
      CallTryParse(numericString, styles);
          
      numericString = "12E01";
      CallTryParse(numericString, styles); 
      
      numericString = "C8";
      CallTryParse(numericString, NumberStyles.HexNumber);
      
      numericString = "0x8C";
      CallTryParse(numericString, NumberStyles.HexNumber);
   }
   
   private static void CallTryParse(string stringToConvert, NumberStyles styles)
   {
      sbyte number;
      bool result = SByte.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 '106' to 106.
//       Attempted conversion of '-106' failed.
//       Converted '103.00' to 103.
//       Attempted conversion of '103.72' failed.
//       Converted '10E-01' to 1.
//       Attempted conversion of '12E-01' failed.
//       Converted '12E01' to 120.
//       Converted 'C8' to -56.
//       Attempted conversion of '0x8C' failed.
Imports System.Globalization

Module StringParsing
   Public Sub Main()
      Dim numericString As String
      Dim styles As NumberStyles
      
      numericString = "106"
      styles = NumberStyles.Integer
      CallTryParse(numericString, styles)
      
      numericString = "-106"
      styles = NumberStyles.None
      CallTryParse(numericString, styles)
      
      numericString = "103.00"
      styles = NumberStyles.Integer Or NumberStyles.AllowDecimalPoint
      CallTryParse(numericString, styles)
      
      numericString = "103.72"
      styles = NumberStyles.Integer Or NumberStyles.AllowDecimalPoint
      CallTryParse(numericString, styles)

      numericString = "10E-01"
      styles = NumberStyles.Integer Or NumberStyles.AllowExponent
      CallTryParse(numericString, styles) 
      
      numericString = "12E-01"
      CallTryParse(numericString, styles)
          
      numericString = "12E01"
      CallTryParse(numericString, styles) 
      
      numericString = "C8"
      CallTryParse(numericString, NumberStyles.HexNumber)
      
      numericString = "0x8C"
      CallTryParse(numericString, NumberStyles.HexNumber)
   End Sub
   
   Private Sub CallTryParse(stringToConvert As String, styles AS NumberStyles)
      Dim number As SByte
      Dim result As Boolean = SByte.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 '106' to 106.
'       Attempted conversion of '-106' failed.
'       Converted '103.00' to 103.
'       Attempted conversion of '103.72' failed.
'       Converted '10E-01' to 1.
'       Attempted conversion of '12E-01' failed.
'       Converted '12E01' to 120.
'       Converted 'C8' to -56.
'       Attempted conversion of '0x8C' failed.

Remarks

O método TryParse(String, NumberStyles, IFormatProvider, SByte) é como o método Parse(String, NumberStyles, IFormatProvider), exceto que ele não lança uma exceção se a conversão falhar.The TryParse(String, NumberStyles, IFormatProvider, SByte) method is like the Parse(String, NumberStyles, IFormatProvider) method, except that it does not throw an exception if the conversion fails. Esse método elimina a necessidade de usar o tratamento de exceções para testar um FormatException se value for inválido e não puder ser analisado com êxito.This method eliminates the need to use exception handling to test for a FormatException if value is invalid and cannot be parsed successfully.

O parâmetro style define os elementos de estilo (como o espaço em branco ou um sinal positivo ou negativo) que são permitidos no parâmetro value para que a operação de análise seja bem-sucedida.The style parameter defines the style elements (such as white space or a positive or negative sign) that are allowed in the value 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. Dependendo do valor de style, o parâmetro value pode incluir os seguintes elementos:Depending on the value of style, the value parameter may include the following elements:

[WS] [$] [assinar] [dígitos,] dígitos[. fractional_digits] [E [sign]exponential_digits] [WS][ws][$][sign][digits,]digits[.fractional_digits][E[sign]exponential_digits][ws]

Se o parâmetro style incluir AllowHexSpecifier, o parâmetro value poderá incluir os seguintes elementos:If the style parameter includes AllowHexSpecifier, the value parameter may include the following elements:

[WS] hexdigits[WS][ws]hexdigits[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 de value se style incluir o sinalizador NumberStyles.AllowLeadingWhite ou no final de value se style incluir o sinalizador NumberStyles.AllowTrailingWhite.White space can appear at the start of value if style includes the NumberStyles.AllowLeadingWhite flag, or at the end of value if style includes the NumberStyles.AllowTrailingWhite flag.
$ Um símbolo de moeda específico de cultura.A culture-specific currency symbol. A posição na cadeia de caracteres é definida pela propriedade CurrencyPositivePattern do objeto NumberFormatInfo retornado pelo método GetFormat do parâmetro 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. O símbolo de moeda pode ser exibido em value caso style inclua o sinalizador NumberStyles.AllowCurrencySymbol.The currency symbol can appear in value if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Um sinal opcional.An optional sign. O sinal pode ser exibido no início de value caso style inclua o sinalizador NumberStyles.AllowLeadingSign e ele pode ser exibido no final de value caso style inclua o sinalizador NumberStyles.AllowTrailingSign.The sign can appear at the start of value if style includes the NumberStyles.AllowLeadingSign flag, and it can appear at the end of value if style includes the NumberStyles.AllowTrailingSign flag. Os parênteses podem ser usados em value para indicar um valor negativo caso style inclua o sinalizador NumberStyles.AllowParentheses.Parentheses can be used in value to indicate a negative value if style includes the NumberStyles.AllowParentheses flag.
digitsdigits Uma sequência de dígitos de 0 a 9.A sequence of digits from 0 through 9.
,, Um separador de grupo específico de cultura.A culture-specific group separator. O separador de grupo da cultura especificada por provider pode aparecer em value se style incluir o sinalizador de NumberStyles.AllowThousands.The group separator of the culture specified by provider can appear in value 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 especificada por provider pode ser exibido em value caso style inclua o sinalizador NumberStyles.AllowDecimalPoint.The decimal point symbol of the culture specified by provider can appear in value if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Uma ou mais ocorrências de dígito 0.One or more occurrences of the digit 0. Os dígitos fracionários só podem ser exibidos em value caso style inclua o sinalizador NumberStyles.AllowDecimalPoint.Fractional digits can appear in value only if style includes the NumberStyles.AllowDecimalPoint flag.
EE O caractere "e" ou "E", que indica que o valor é representado em notação exponencial (científica).The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. O parâmetro value pode representar um número em notação exponencial caso style inclua o sinalizador NumberStyles.AllowExponent.The value parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits Uma sequência de dígitos de 0 a 9.A sequence of digits from 0 through 9. O parâmetro value pode representar um número em notação exponencial caso style inclua o sinalizador NumberStyles.AllowExponent.The value parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits Uma sequência de dígitos hexadecimais de 0 a f ou de 0 a F.A sequence of hexadecimal digits from 0 through f, or 0 through F.

Note

Todos os caracteres NUL (U + 0000) de encerramento em s são ignorados pela operação de análise, independentemente do valor do argumento style.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 decimais (que corresponde ao sinalizador NumberStyles.None ) sempre é analisada com êxito.A string with decimal digits only (which corresponds to the NumberStyles.None flag) always parses successfully. A maioria dos elementos de controle de membros NumberStyles restantes que podem estar presentes, mas que não precisam estar presentes, na cadeia de caracteres de entrada.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in this input string. A tabela a seguir indica como os membros NumberStyles individuais afetam os elementos que podem estar presentes em value.The following table indicates how individual NumberStyles members affect the elements that may be present in value.

Valores NumberStyles não compostosNon-composite NumberStyles values Elementos permitidos no valor além de dígitosElements permitted in value in addition to digits
None Somente dígitos decimais.Decimal digits only.
AllowDecimalPoint Os elementos de ponto decimal (.) e fractional_digits .The decimal point (.) and fractional_digits elements. No entanto, fractional_digits deve consistir apenas de um ou mais 0 dígitos ou o método retorna false.However, fractional_digits must consist of only one or more 0 digits, or the method returns false.
AllowExponent O caractere "e" ou "E", que indica a notação exponencial, juntamente com exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits. Se value representar um número em notação exponencial, ele não poderá ter um componente fracionário diferente de zero.If value represents a number in exponential notation, it cannot have a non-zero, fractional component.
AllowLeadingWhite O elemento WS no início de value.The ws element at the start of value.
AllowTrailingWhite O elemento ws no final de value.The ws element at the end of value.
AllowLeadingSign O elemento Sign antes dos dígitos.The sign element before digits.
AllowTrailingSign O elemento Sign após dígitos.The sign element after digits.
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 separador de grupo (,).The group separator (,) element.
AllowCurrencySymbol O elemento Currency ($).The currency ($) element.
Currency Todos os elementos.All elements. No entanto, value não pode representar um número hexadecimal ou um número em notação exponencial.However, value cannot represent a hexadecimal number or a number in exponential notation.
Float O elemento WS no início ou no final de value, assine o início de valuee o símbolo de ponto decimal (.).The ws element at the start or end of value, sign at the start of value, and the decimal point (.) symbol. O parâmetro value também pode usar notação exponencial.The value parameter can also use exponential notation.
Number Os elementos WS, Sign, Group separador (,) e ponto decimal (.).The ws, sign, group separator (,), and decimal point (.) elements.
Any Todos os elementos.All elements. No entanto, value não pode representar um número hexadecimal.However, value cannot represent a hexadecimal number.

Caso o sinalizador NumberStyles.AllowHexSpecifier seja usado, value deve ser um valor hexadecimal.If the NumberStyles.AllowHexSpecifier flag is used, value must be a hexadecimal value. Os dígitos hexadecimais válidos são 0-9, a-f e A-F.Valid hexadecimal digits are 0-9, a-f, and A-F. Os únicos outros sinalizadores que podem estar presentes em style são NumberStyles.AllowLeadingWhite e NumberStyles.AllowTrailingWhite.The only other flags that can be present in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (A enumeração NumberStyles tem um estilo composto, HexNumber, que inclui ambos os sinalizadores de espaço em branco.)(The NumberStyles enumeration has a composite style, HexNumber, that includes both white-space flags.)

Note

Caso value seja a representação da cadeia de caracteres de um número hexadecimal, ele não pode ser precedido por qualquer decoração (como 0x ou &h) que o diferencia como um número hexadecimal.If value 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. Isso faz a conversão falhar.This causes the conversion to fail.

O parâmetro provider é uma implementação de IFormatProvider.The provider parameter is an IFormatProvider implementation. O método GetFormat retorna um objeto NumberFormatInfo que fornece informações específicas de cultura sobre o formato de value.Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of value. O parâmetro provider pode ser qualquer um dos seguintes:The provider parameter can be any one of the following:

  • Um objeto CultureInfo que representa a cultura que fornece informações de formatação.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.

  • Um objeto NumberFormatInfo que fornece informações de formatação numérica.A NumberFormatInfo object that provides numeric formatting information. (Sua implementação de GetFormat retorna apenas ele próprio.)(Its implementation of GetFormat just returns itself.)

  • Um objeto personalizado que implementa IFormatProvider.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.

Caso provider seja null, o objeto NumberFormatInfo da cultura atual é usado.If provider is null, the NumberFormatInfo object for the current culture is used.

See also

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

Important

This API is not CLS-compliant.

Tenta converter a representação de intervalo de um número em um formato específico da cultura e um estilo especificados em seu equivalente de SByte e retorna um valor que indica se a conversão foi bem-sucedida.Tries to convert the span representation of a number in a specified style and culture-specific format to its SByte equivalent, and returns a value that indicates whether the conversion succeeded.

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

Parameters

s
ReadOnlySpan<Char>

Um intervalo que contém os caracteres que representam o número a ser convertido.A span containing the characters that represent the number to convert.

style
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 a ser especificado é Integer.A typical value to specify is Integer.

provider
IFormatProvider

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

result
SByte

Quando esse método for retornado, conterá o equivalente do valor inteiro com sinal de 8 bits do número contido em s se a conversão tiver sido bem-sucedida ou zero se a conversão tiver falhado.When this method returns, contains the 8-bit signed integer value equivalent to the number 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 em conformidade com style 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 in a format compliant with style, 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.

Returns

Boolean

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

Attributes

Applies to