SByte.TryParse Metoda

Definice

Převádí řetězcové vyjádření čísla na jeho ekvivalent v podobě 8bitového celého čísla se znaménkem.Converts the string representation of a number to its 8-bit signed integer equivalent. Návratový kód označuje, zda byl převod úspěšný nebo neúspěšný.A return code indicates whether the conversion succeeded or failed.

Přetížení

TryParse(String, SByte)

Pokusí se převést řetězcové vyjádření čísla na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně.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)

Pokusí se převést rozsah reprezentující číslo na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda byl převod úspěšný.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)

Pokusí se převést řetězcové vyjádření čísla v zadaném stylu a formátu specifického pro jazykovou verzi na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně.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)

Pokusí se převést rozsah reprezentace čísla v zadaném stylu a formátu specifického pro jazykovou verzi na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně.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)

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Pokusí se převést řetězcové vyjádření čísla na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně.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);
[System.CLSCompliant(false)]
public static bool TryParse (string? s, out sbyte? result);
[<System.CLSCompliant(false)>]
static member TryParse : string * sbyte -> bool
static member TryParse : string * sbyte -> bool
Public Shared Function TryParse (s As String, ByRef result As SByte) As Boolean

Parametry

s
String

Řetězec obsahující číslo k převedení.A string that contains a number to convert.

result
SByte

Když tato metoda vrátí hodnotu, obsahuje 8bitové celé číslo se znaménkem, které je ekvivalentní číslu obsaženému v s případě, že převod proběhl úspěšně, nebo nula, pokud se převod nezdařil.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. Převod se nezdařil, pokud s je parametr null nebo, není Empty ve správném formátu nebo představuje číslo, které je menší MinValue nebo rovno 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. Tento parametr se předává jako Neinicializovaný; Všechny původně zadané hodnoty result se přepíší.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Návraty

Boolean

truesv případě, že byl úspěšně převeden, v opačném případě false .true if s was converted successfully; otherwise, false.

Atributy

Příklady

Následující příklad se pokusí převést řetězce v poli na SByte hodnoty voláním TryParse(String, SByte) metody.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.

Poznámky

SByte.TryParse(String, SByte)Metoda je podobně jako SByte.Parse(String) Metoda s tím rozdílem, že nevyvolá výjimku, pokud převod není úspěšný.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. Tato metoda eliminuje nutnost použít zpracování výjimek k otestování, FormatException Pokud value je neplatný a nelze ji úspěšně analyzovat.This method eliminates the need to use exception handling to test for a FormatException if value is invalid and cannot be successfully parsed.

sParametr by měl být řetězcové vyjádření desítkového čísla v následujícím tvaru:The s parameter should be the string representation of a decimal number in the following form:

[WS] [Sign] číslice[WS][ws][sign]digits[ws]

Prvky v hranatých závorkách ([a]) jsou volitelné.Elements in square brackets ([ and ]) are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

ElementElement PopisDescription
wsws Volitelné prázdné místo.Optional white space.
signsign Nepovinný znak.An optional sign. Platné znaky znaménka jsou určeny NumberFormatInfo.NegativeSign vlastnostmi a NumberFormatInfo.PositiveSign aktuální jazykové verze.Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture.
číslicedigits Posloupnost čísel v desítkové soustavě v rozsahu od 0 do 9.A sequence of decimal digits ranging from 0 to 9.

Poznámka

Řetězec určený value parametrem nesmí obsahovat žádné oddělovače skupin ani oddělovač desetinných míst a nemůže mít desetinnou část.The string specified by the value parameter cannot contain any group separators or decimal separator, and it cannot have a decimal portion.

sParametr je interpretován pomocí NumberStyles.Integer stylu.The s parameter is interpreted by using the NumberStyles.Integer style. Kromě desítkových číslic jsou povoleny pouze úvodní a koncové mezery s počátečním znaménkem.In addition to the decimal digits, only leading and trailing spaces with a leading sign are allowed. Chcete-li explicitně definovat prvky stylu s informacemi o formátování specifické jazykové verze, které mohou být přítomny v value , zavolejte TryParse(String, NumberStyles, IFormatProvider, SByte) metodu.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.

sParametr je analyzován pomocí informací o formátování v NumberFormatInfo objektu pro aktuální jazykovou verzi.The s parameter is parsed by using the formatting information in a NumberFormatInfo object for the current culture. Další informace naleznete v tématu NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo.

Toto přetížení interpretuje všechny číslice v value parametru jako desítkové číslice.This overload interprets all digits in the value parameter as decimal digits. Chcete-li analyzovat řetězcové vyjádření šestnáctkového čísla, zavolejte TryParse(String, NumberStyles, IFormatProvider, SByte) místo toho přetížení.To parse the string representation of a hexadecimal number, call the TryParse(String, NumberStyles, IFormatProvider, SByte) overload instead.

Platí pro

TryParse(ReadOnlySpan<Char>, SByte)

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Pokusí se převést rozsah reprezentující číslo na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda byl převod úspěšný.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
[<System.CLSCompliant(false)>]
static member TryParse : ReadOnlySpan<char> * sbyte -> bool
Public Shared Function TryParse (s As ReadOnlySpan(Of Char), ByRef result As SByte) As Boolean

Parametry

s
ReadOnlySpan<Char>

Rozsah obsahující znaky, které mají být převedeny.A span containing the characters representing the number to convert.

result
SByte

Když tato metoda vrátí hodnotu, obsahuje 8bitové celé číslo se znaménkem, které je ekvivalentní číslu obsaženému v s případě, že převod proběhl úspěšně, nebo nula, pokud se převod nezdařil.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. Převod se nezdařil, pokud s je parametr null nebo, není Empty ve správném formátu nebo představuje číslo, které je menší MinValue nebo rovno 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. Tento parametr se předává jako Neinicializovaný; Všechny původně zadané hodnoty result se přepíší.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Návraty

Boolean

truesv případě, že byl úspěšně převeden, v opačném případě false .true if s was converted successfully; otherwise, false.

Atributy

Platí pro

TryParse(String, NumberStyles, IFormatProvider, SByte)

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Alternativa odpovídající specifikaci CLS
System.Int16.TryParse(String, Int16)

Pokusí se převést řetězcové vyjádření čísla v zadaném stylu a formátu specifického pro jazykovou verzi na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně.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);
[System.CLSCompliant(false)]
public static bool TryParse (string? s, System.Globalization.NumberStyles style, IFormatProvider? provider, out sbyte? result);
[<System.CLSCompliant(false)>]
static member TryParse : string * System.Globalization.NumberStyles * IFormatProvider * sbyte -> bool
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

Parametry

s
String

Řetězec představující číslo, které má být převedeno.A string representing a number to convert.

style
NumberStyles

Bitová kombinace hodnot výčtu, která určuje povolený formát s .A bitwise combination of enumeration values that indicates the permitted format of s. Typická hodnota, která se má zadat Integer , je.A typical value to specify is Integer.

provider
IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi s .An object that supplies culture-specific formatting information about s.

result
SByte

Když tato metoda vrátí hodnotu, obsahuje 8bitové číslo se znaménkem, které je ekvivalentní číslu obsaženému v s , pokud převod proběhl úspěšně, nebo nula, pokud převod selhal.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. Převod se nezdařil s , pokud je parametr null nebo, není Empty ve formátu, který je kompatibilní s style , nebo představuje číslo menší MinValue nebo MaxValue rovno.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. Tento parametr se předává jako Neinicializovaný; Všechny původně zadané hodnoty result se přepíší.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Návraty

Boolean

truesv případě, že byl úspěšně převeden, v opačném případě false .true if s was converted successfully; otherwise, false.

Atributy

Výjimky

style není NumberStyles hodnota.style is not a NumberStyles value.

-nebo--or- style není kombinací AllowHexSpecifier HexNumber hodnot a.style is not a combination of AllowHexSpecifier and HexNumber values.

Příklady

Následující příklad volá TryParse(String, NumberStyles, IFormatProvider, SByte) metodu s množstvím různých řetězců a NumberStyles hodnot.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.

Poznámky

TryParse(String, NumberStyles, IFormatProvider, SByte)Metoda je podobně jako Parse(String, NumberStyles, IFormatProvider) Metoda s tím rozdílem, že nevyvolá výjimku, pokud převod není úspěšný.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. Tato metoda eliminuje nutnost použít zpracování výjimek k otestování, FormatException Pokud value je neplatný a nelze ji úspěšně analyzovat.This method eliminates the need to use exception handling to test for a FormatException if value is invalid and cannot be parsed successfully.

styleParametr definuje prvky stylu (například prázdné znaky nebo kladné nebo záporné znaménko), které jsou povoleny v value parametru pro úspěšné provedení operace analýzy.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. Musí být kombinací bitových příznaků od NumberStyles výčtu.It must be a combination of bit flags from the NumberStyles enumeration. V závislosti na hodnotě style value může parametr obsahovat následující prvky:Depending on the value of style, the value parameter may include the following elements:

[WS] [ $ ] [Sign] [číslice,]číslice[.fractional_digits] [E [sign]exponential_digits] [WS][ws][$][sign][digits,]digits[.fractional_digits][E[sign]exponential_digits][ws]

Pokud style parametr zahrnuje AllowHexSpecifier , value parametr může obsahovat následující prvky:If the style parameter includes AllowHexSpecifier, the value parameter may include the following elements:

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

Prvky v hranatých závorkách ([a]) jsou volitelné.Elements in square brackets ([ and ]) are optional. Následující tabulka popisuje jednotlivé prvky.The following table describes each element.

ElementElement PopisDescription
wsws Volitelné prázdné místo.Optional white space. Prázdné znaky mohou být zobrazeny na začátku value , pokud style obsahuje NumberStyles.AllowLeadingWhite příznak nebo na konci, value Pokud style obsahuje NumberStyles.AllowTrailingWhite příznak.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.
$ Symbol měny pro konkrétní jazykovou verzi.A culture-specific currency symbol. Jeho pozice v řetězci je definována CurrencyPositivePattern vlastností NumberFormatInfo objektu vráceného GetFormat metodou provider parametru.Its position in the string is defined by the CurrencyPositivePattern property of the NumberFormatInfo object returned by the GetFormat method of the provider parameter. Symbol měny se může objevit v části value if style obsahuje NumberStyles.AllowCurrencySymbol příznak.The currency symbol can appear in value if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Nepovinný znak.An optional sign. Znaménko se může zobrazit na začátku value , pokud style obsahuje NumberStyles.AllowLeadingSign příznak a může se objevit na konci, value Pokud style obsahuje NumberStyles.AllowTrailingSign příznak.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. Závorky lze použít v value k označení záporné hodnoty, pokud style obsahuje NumberStyles.AllowParentheses příznak.Parentheses can be used in value to indicate a negative value if style includes the NumberStyles.AllowParentheses flag.
číslicedigits Řada číslic od 0 do 9.A sequence of digits from 0 through 9.
,, Oddělovač skupin specifický pro jazykovou verzi.A culture-specific group separator. providerV případě, že value style obsahuje příznak, se může objevit oddělovač skupiny jazykové verze určené parametrem NumberStyles.AllowThousands .The group separator of the culture specified by provider can appear in value if style includes the NumberStyles.AllowThousands flag.
.. Symbol desetinné čárky specifický pro jazykovou verzi.A culture-specific decimal point symbol. Symbol desetinné čárky jazykové verze určený parametrem se provider může objevit value v style části if obsahuje NumberStyles.AllowDecimalPoint příznak.The decimal point symbol of the culture specified by provider can appear in value if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Jeden nebo více výskytů číslice 0.One or more occurrences of the digit 0. Zlomkové číslice se mohou objevit value pouze v případě style , že obsahuje NumberStyles.AllowDecimalPoint příznak.Fractional digits can appear in value only if style includes the NumberStyles.AllowDecimalPoint flag.
EE Znak "e" nebo "E", který určuje, že hodnota je reprezentován v exponenciální (vědecké) notaci.The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. valueParametr může představovat číslo v exponenciálním zápisu, pokud style obsahuje NumberStyles.AllowExponent příznak.The value parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits Řada číslic od 0 do 9.A sequence of digits from 0 through 9. valueParametr může představovat číslo v exponenciálním zápisu, pokud style obsahuje NumberStyles.AllowExponent příznak.The value parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
hexdigitshexdigits Posloupnost šestnáctkových číslic od 0 do f nebo id 0 do F.A sequence of hexadecimal digits from 0 through f, or 0 through F.

Poznámka

Všechny ukončující znaky NUL (U + 0000) v s jsou ignorovány operací analýzy bez ohledu na hodnotu style argumentu.Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

Řetězec s pouze desítkovými číslicemi (který odpovídá NumberStyles.None příznaku) se vždy analyzuje úspěšně.A string with decimal digits only (which corresponds to the NumberStyles.None flag) always parses successfully. Většina zbývajících NumberStyles členů určuje ovládací prvky, které mohou být přítomny, ale v tomto vstupním řetězci nejsou nutné.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in this input string. Následující tabulka uvádí, jak jednotlivé NumberStyles členy ovlivňují prvky, které mohou být přítomny v value .The following table indicates how individual NumberStyles members affect the elements that may be present in value.

Hodnoty, které nejsou složené NumberStylesNon-composite NumberStyles values Prvky, které jsou povoleny v hodnotě kromě číslicElements permitted in value in addition to digits
None Pouze desítkové číslice.Decimal digits only.
AllowDecimalPoint Prvky desetinné čárky (.) a fractional_digits .The decimal point (.) and fractional_digits elements. Fractional_digits však musí obsahovat pouze jednu nebo více číslic 0 nebo metoda vrátí hodnotu false .However, fractional_digits must consist of only one or more 0 digits, or the method returns false.
AllowExponent Znak "e" nebo "E", který označuje exponenciální zápis, spolu s exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits. Pokud value představuje číslo v exponenciální notaci, nemůže mít nenulovou, zlomkovou komponentu.If value represents a number in exponential notation, it cannot have a non-zero, fractional component.
AllowLeadingWhite Element WS na začátku value .The ws element at the start of value.
AllowTrailingWhite Element WS na konci value .The ws element at the end of value.
AllowLeadingSign Element Sign před číslicemi.The sign element before digits.
AllowTrailingSign Element Sign za číslicemi.The sign element after digits.
AllowParentheses Element Sign ve formě závorek, který obklopuje číselnou hodnotu.The sign element in the form of parentheses enclosing the numeric value.
AllowThousands Prvek oddělovače skupin (,).The group separator (,) element.
AllowCurrencySymbol Element Currency ( $ ).The currency ($) element.
Currency Všechny prvky.All elements. valueV exponenciálním zápisu ale nemůže představovat šestnáctkové číslo ani číslo.However, value cannot represent a hexadecimal number or a number in exponential notation.
Float Element WS na začátku nebo konci value , podepsat na začátku a value symbol desetinné čárky (.).The ws element at the start or end of value, sign at the start of value, and the decimal point (.) symbol. valueParametr může také používat exponenciální zápis.The value parameter can also use exponential notation.
Number Prvky WS, Sign, oddělovač skupin (,) a desetinná čárka (.).The ws, sign, group separator (,), and decimal point (.) elements.
Any Všechny prvky.All elements. Nemůže ale value představovat hexadecimální číslo.However, value cannot represent a hexadecimal number.

Pokud se NumberStyles.AllowHexSpecifier použije příznak, value musí být hexadecimální hodnota.If the NumberStyles.AllowHexSpecifier flag is used, value must be a hexadecimal value. Platné hexadecimální číslice jsou 0-9, a-f a a-F.Valid hexadecimal digits are 0-9, a-f, and A-F. Jediné další příznaky, které mohou být přítomny v nástroji, style jsou NumberStyles.AllowLeadingWhite a NumberStyles.AllowTrailingWhite .The only other flags that can be present in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. ( NumberStyles Výčet má složený styl, HexNumber , který obsahuje příznaky bílého místa.)(The NumberStyles enumeration has a composite style, HexNumber, that includes both white-space flags.)

Poznámka

Pokud value je řetězcové vyjádření šestnáctkového čísla, nemůže mu předcházet žádná dekorace (například 0x nebo &h ), která ho odlišuje jako šestnáctkové číslo.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. To způsobí selhání převodu.This causes the conversion to fail.

providerParametr je IFormatProvider implementace.The provider parameter is an IFormatProvider implementation. Jeho GetFormat Metoda vrátí NumberFormatInfo objekt, který poskytuje informace specifické jazykové verze o formátu value .Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of value. providerParametr může mít jednu z následujících možností:The provider parameter can be any one of the following:

  • CultureInfoObjekt, který představuje jazykovou verzi poskytující informace o formátování.A CultureInfo object that represents the culture that supplies formatting information. Jeho GetFormat Metoda vrátí NumberFormatInfo objekt, který poskytuje informace o formátování čísel pro tuto jazykovou verzi.Its GetFormat method returns the NumberFormatInfo object that provides numeric formatting information for that culture.

  • NumberFormatInfoObjekt, který poskytuje informace o formátování čísel.A NumberFormatInfo object that provides numeric formatting information. (Implementace GetFormat jenom vrátí sám sebe.)(Its implementation of GetFormat just returns itself.)

  • Vlastní objekt, který implementuje IFormatProvider .A custom object that implements IFormatProvider. Jeho GetFormat Metoda vytvoří instanci a vrátí NumberFormatInfo objekt, který poskytuje informace o formátování.Its GetFormat method instantiates and returns the NumberFormatInfo object that provides formatting information.

Pokud provider je null , je NumberFormatInfo použit objekt pro aktuální jazykovou verzi.If provider is null, the NumberFormatInfo object for the current culture is used.

Viz také

Platí pro

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

Důležité

Toto rozhraní API neodpovídá specifikaci CLS.

Pokusí se převést rozsah reprezentace čísla v zadaném stylu a formátu specifického pro jazykovou verzi na jeho SByte ekvivalent a vrátí hodnotu, která označuje, zda převod proběhl úspěšně.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);
[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
[<System.CLSCompliant(false)>]
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

Parametry

s
ReadOnlySpan<Char>

Rozpětí obsahující znaky, které mají být převedeny.A span containing the characters that represent the number to convert.

style
NumberStyles

Bitová kombinace hodnot výčtu, která určuje povolený formát s .A bitwise combination of enumeration values that indicates the permitted format of s. Typická hodnota, která se má zadat Integer , je.A typical value to specify is Integer.

provider
IFormatProvider

Objekt, který poskytuje informace o formátování specifické pro jazykovou verzi s .An object that supplies culture-specific formatting information about s.

result
SByte

Když tato metoda vrátí hodnotu, obsahuje 8bitové číslo se znaménkem, které je ekvivalentní číslu obsaženému v s , pokud převod proběhl úspěšně, nebo nula, pokud převod selhal.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. Převod se nezdařil s , pokud je parametr null nebo, není Empty ve formátu, který je kompatibilní s style , nebo představuje číslo menší MinValue nebo MaxValue rovno.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. Tento parametr se předává jako Neinicializovaný; Všechny původně zadané hodnoty result se přepíší.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Návraty

Boolean

truesv případě, že byl úspěšně převeden, v opačném případě false .true if s was converted successfully; otherwise, false.

Atributy

Platí pro