SByte.TryParse Methode

Definition

Konvertiert die Zeichenfolgendarstellung einer Zahl in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number to its 8-bit signed integer equivalent. Ein Rückgabecode gibt an, ob die Konvertierung erfolgreich war oder nicht.A return code indicates whether the conversion succeeded or failed.

Überlädt

TryParse(String, SByte)

Versucht, die Zeichenfolgendarstellung einer Zahl in deren SByte-Entsprechung zu konvertieren, und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich durchgeführt wurde.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)

Versucht, die Spannendarstellung einer Zahl in deren SByte-Entsprechung zu konvertieren, und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich durchgeführt wurde.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)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und kulturspezifischen Format in das entsprechende SByte und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich abgeschlossen wurde.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)

Konvertiert die Spannendarstellung einer Zahl in einem angegebenen Stil und kulturspezifischen Format in das entsprechende SByte und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich abgeschlossen wurde.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)

Wichtig

Diese API ist nicht CLS-kompatibel.

Versucht, die Zeichenfolgendarstellung einer Zahl in deren SByte-Entsprechung zu konvertieren, und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich durchgeführt wurde.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);
static member TryParse : string * sbyte -> bool
Public Shared Function TryParse (s As String, ByRef result As SByte) As Boolean

Parameter

s
String

Eine Zeichenfolge, die eine zu konvertierende Zahl enthält.A string that contains a number to convert.

result
SByte

Diese Methode gibt bei erfolgreicher Konvertierung den 8-Bit-Ganzzahlwert mit Vorzeichen zurück, der der Zahl in s entspricht, und 0 (null), wenn die Konvertierung nicht durchgeführt werden konnte.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. Die Konvertierung kann nicht durchgeführt werden, wenn der s-Parameter null oder Empty ist, kein gültiges Format aufweist oder eine Zahl kleiner als MinValue oder größer als MaxValue darstellt.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. Dieser Parameter wird nicht initialisiert übergeben. Jeder Wert, der ursprünglich im bereitgestellten result überschrieben werden.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Gibt zurück

true, wenn s erfolgreich konvertiert wurde, andernfalls false.true if s was converted successfully; otherwise, false.

Attribute

Beispiele

Im folgenden Beispiel wird versucht, die Zeichen folgen in einem Array in SByte Werte zu konvertieren, indem die TryParse(String, SByte)-Methode aufgerufen wird.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.

Hinweise

Die SByte.TryParse(String, SByte)-Methode ähnelt der SByte.Parse(String)-Methode, mit der Ausnahme, dass keine Ausnahme ausgelöst wird, wenn bei der Konvertierung ein Fehler auftritt.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. Diese Methode entfällt, dass die Ausnahmebehandlung verwendet werden muss, um auf eine FormatException zu testen, wenn value ungültig ist und nicht erfolgreich analysiert werden kann.This method eliminates the need to use exception handling to test for a FormatException if value is invalid and cannot be successfully parsed.

Der s-Parameter sollte die Zeichen folgen Darstellung einer Dezimalzahl in der folgenden Form sein:The s parameter should be the string representation of a decimal number in the following form:

[WS] [Sign] Ziffern[WS][ws][sign]digits[ws]

Elemente in eckigen Klammern ([ und ]) sind optional.Elements in square brackets ([ and ]) are optional. In der folgenden Tabelle wird jedes Element beschrieben.The following table describes each element.

ElementElement BeschreibungDescription
wsws Optionaler Leerraum.Optional white space.
signsign Ein optionales Vorzeichen.An optional sign. Gültige Zeichen werden durch die Eigenschaften NumberFormatInfo.NegativeSign und NumberFormatInfo.PositiveSign der aktuellen Kultur bestimmt.Valid sign characters are determined by the NumberFormatInfo.NegativeSign and NumberFormatInfo.PositiveSign properties of the current culture.
Zifferndigits Eine Sequenz von Dezimalziffern im Bereich von 0 bis 9.A sequence of decimal digits ranging from 0 to 9.

Hinweis

Die vom value-Parameter angegebene Zeichenfolge darf keine Gruppen Trennzeichen oder Dezimaltrennzeichen enthalten, und Sie darf keinen Dezimalteil enthalten.The string specified by the value parameter cannot contain any group separators or decimal separator, and it cannot have a decimal portion.

Der s-Parameter wird mithilfe des NumberStyles.Integer Stils interpretiert.The s parameter is interpreted by using the NumberStyles.Integer style. Zusätzlich zu den Dezimalziffern sind nur führende und nachfolgende Leerzeichen mit einem vorangestellten Zeichen zulässig.In addition to the decimal digits, only leading and trailing spaces with a leading sign are allowed. Um die Stilelemente mit den kulturspezifischen Formatierungsinformationen, die in valuevorhanden sein können, explizit zu definieren, müssen Sie die TryParse(String, NumberStyles, IFormatProvider, SByte)-Methode aufzurufen.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.

Der s-Parameter wird analysiert, indem die Formatierungsinformationen in einem NumberFormatInfo-Objekt für die aktuelle Kultur verwendet werden.The s parameter is parsed by using the formatting information in a NumberFormatInfo object for the current culture. Weitere Informationen finden Sie unter NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo.

Diese Überladung interpretiert alle Ziffern im value-Parameter als Dezimalziffern.This overload interprets all digits in the value parameter as decimal digits. Um die Zeichen folgen Darstellung einer hexadezimalen Zahl zu analysieren, müssen Sie stattdessen die TryParse(String, NumberStyles, IFormatProvider, SByte) Überladung aufrufen.To parse the string representation of a hexadecimal number, call the TryParse(String, NumberStyles, IFormatProvider, SByte) overload instead.

Siehe auch

TryParse(ReadOnlySpan<Char>, SByte)

Wichtig

Diese API ist nicht CLS-kompatibel.

Versucht, die Spannendarstellung einer Zahl in deren SByte-Entsprechung zu konvertieren, und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich durchgeführt wurde.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);
[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

Parameter

s
ReadOnlySpan<Char>

Die Spanne mit den Zeichen, die die zu konvertierende Zahl darstellen.A span containing the characters representing the number to convert.

result
SByte

Diese Methode gibt bei erfolgreicher Konvertierung den Wert der ganzen 8-Bit-Zahl mit Vorzeichen zurück, der der Zahl in s entspricht, und 0 (null), wenn die Konvertierung nicht durchgeführt werden konnte.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. Die Konvertierung kann nicht durchgeführt werden, wenn der s-Parameter null oder Empty ist, kein gültiges Format aufweist oder eine Zahl kleiner als MinValue oder größer als MaxValue darstellt.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. Dieser Parameter wird nicht initialisiert übergeben. Jeder Wert, der ursprünglich im bereitgestellten result überschrieben werden.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Gibt zurück

true, wenn s erfolgreich konvertiert wurde, andernfalls false.true if s was converted successfully; otherwise, false.

Attribute

TryParse(String, NumberStyles, IFormatProvider, SByte)

Wichtig

Diese API ist nicht CLS-kompatibel.

CLS-kompatible Alternative
System.Int16.TryParse(String, Int16)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und kulturspezifischen Format in das entsprechende SByte und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich abgeschlossen wurde.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);
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

Parameter

s
String

Eine Zeichenfolge, die die zu konvertierende Zahl darstellt.A string representing a number to convert.

style
NumberStyles

Eine bitweise Kombination von Enumerationswerten, die das zulässige Format von s angibt.A bitwise combination of enumeration values that indicates the permitted format of s. Ein häufig angegebener Wert ist Integer.A typical value to specify is Integer.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu s bereitstellt.An object that supplies culture-specific formatting information about s.

result
SByte

Diese Methode gibt bei erfolgreicher Konvertierung den Wert der ganzen 8-Bit-Zahl mit Vorzeichen zurück, der der Zahl in s entspricht, und 0 (null), wenn die Konvertierung nicht durchgeführt werden konnte.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. Bei der Konvertierung tritt ein Fehler auf, wenn der s-Parameter null oder Empty ist, nicht in einem mit style kompatiblen Format vorliegt oder eine Zahl kleiner als MinValue oder größer als MaxValue darstellt.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. Dieser Parameter wird nicht initialisiert übergeben. Jeder Wert, der ursprünglich im bereitgestellten result überschrieben werden.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Gibt zurück

true, wenn s erfolgreich konvertiert wurde, andernfalls false.true if s was converted successfully; otherwise, false.

Attribute

Ausnahmen

style ist kein NumberStyles-Wert.style is not a NumberStyles value.

- oder --or- style ist keine Kombination von AllowHexSpecifier- und HexNumber-Werten.style is not a combination of AllowHexSpecifier and HexNumber values.

Beispiele

Im folgenden Beispiel wird die TryParse(String, NumberStyles, IFormatProvider, SByte)-Methode mit einer Reihe von unterschiedlichen Zeichen folgen-und NumberStyles Werten aufgerufen.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.

Hinweise

Die TryParse(String, NumberStyles, IFormatProvider, SByte)-Methode ähnelt der Parse(String, NumberStyles, IFormatProvider)-Methode, mit der Ausnahme, dass keine Ausnahme ausgelöst wird, wenn bei der Konvertierung ein Fehler auftritt.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. Diese Methode entfällt, dass die Ausnahmebehandlung verwendet werden muss, um auf eine FormatException zu testen, wenn value ungültig ist und nicht erfolgreich analysiert werden kann.This method eliminates the need to use exception handling to test for a FormatException if value is invalid and cannot be parsed successfully.

Der style-Parameter definiert die Stilelemente (z. b. Leerzeichen oder ein positives oder negatives Zeichen), die im value-Parameter zulässig sind, damit der Analyse Vorgang erfolgreich ausgeführt werden kann.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. Dabei muss es sich um eine Kombination von Bitflags aus der NumberStyles Enumeration handeln.It must be a combination of bit flags from the NumberStyles enumeration. Abhängig vom Wert stylekann der value Parameter die folgenden Elemente enthalten:Depending on the value of style, the value parameter may include the following elements:

[WS] [$] [Sign] [Ziffern,] Ziffern[. fractional_digits] [E [Sign]Exponential_digits] [WS][ws][$][sign][digits,]digits[.fractional_digits][E[sign]exponential_digits][ws]

Wenn der style-Parameter AllowHexSpecifierenthält, kann der value-Parameter die folgenden Elemente enthalten:If the style parameter includes AllowHexSpecifier, the value parameter may include the following elements:

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

Elemente in eckigen Klammern ([ und ]) sind optional.Elements in square brackets ([ and ]) are optional. In der folgenden Tabelle wird jedes Element beschrieben.The following table describes each element.

ElementElement BeschreibungDescription
wsws Optionaler Leerraum.Optional white space. Leerraum kann am Anfang der value vorkommen, wenn style das NumberStyles.AllowLeadingWhite-Flag enthält, oder am Ende value, wenn style das NumberStyles.AllowTrailingWhite-Flag enthält.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.
$ Ein kulturspezifisches Währungssymbol.A culture-specific currency symbol. Die Position in der Zeichenfolge wird durch die CurrencyPositivePattern-Eigenschaft des NumberFormatInfo Objekts definiert, das von der GetFormat-Methode des provider-Parameters zurückgegeben wurde.Its position in the string is defined by the CurrencyPositivePattern property of the NumberFormatInfo object returned by the GetFormat method of the provider parameter. Das Währungssymbol kann in value angezeigt werden, wenn style das NumberStyles.AllowCurrencySymbol-Flag enthält.The currency symbol can appear in value if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Ein optionales Vorzeichen.An optional sign. Das Vorzeichen kann am Anfang der value vorkommen, wenn style das NumberStyles.AllowLeadingSign-Flag enthält, und es kann am Ende value angezeigt werden, wenn style das NumberStyles.AllowTrailingSign-Flag enthält.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. In value können Klammern verwendet werden, um einen negativen Wert anzugeben, wenn style das NumberStyles.AllowParentheses-Flag enthält.Parentheses can be used in value to indicate a negative value if style includes the NumberStyles.AllowParentheses flag.
Zifferndigits Eine Sequenz von Ziffern zwischen 0 und 9.A sequence of digits from 0 through 9.
,, Ein kulturspezifisches Gruppen Trennzeichen.A culture-specific group separator. Das Gruppen Trennzeichen der durch provider angegebenen Kultur kann in value angezeigt werden, wenn style das NumberStyles.AllowThousands-Flag enthält.The group separator of the culture specified by provider can appear in value if style includes the NumberStyles.AllowThousands flag.
.. Ein kulturspezifisches Dezimaltrennzeichen.A culture-specific decimal point symbol. Das Dezimaltrennzeichen der durch provider angegebenen Kultur kann in value vorkommen, wenn style das NumberStyles.AllowDecimalPoint-Flag enthält.The decimal point symbol of the culture specified by provider can appear in value if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Mindestens ein Vorkommen der Ziffer 0 (null).One or more occurrences of the digit 0. Bruch Ziffern können nur in value angezeigt werden, wenn style das NumberStyles.AllowDecimalPoint-Flag enthält.Fractional digits can appear in value only if style includes the NumberStyles.AllowDecimalPoint flag.
EE Das Zeichen "e" oder "e", das angibt, dass der Wert in exponentieller Notation (Scientific) dargestellt wird.The "e" or "E" character, which indicates that the value is represented in exponential (scientific) notation. Der value-Parameter kann eine Zahl in Exponentialnotation darstellen, wenn style das NumberStyles.AllowExponent-Flag enthält.The value parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits Eine Sequenz von Ziffern zwischen 0 und 9.A sequence of digits from 0 through 9. Der value-Parameter kann eine Zahl in Exponentialnotation darstellen, wenn style das NumberStyles.AllowExponent-Flag enthält.The value parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
Hexziffernhexdigits Eine Sequenz von hexadezimalen Ziffern zwischen 0 und f oder 0 bis f.A sequence of hexadecimal digits from 0 through f, or 0 through F.

Hinweis

Alle abschließenden NUL-Zeichen (U + 0000) in s werden vom Analyse-Vorgang unabhängig vom Wert des style Arguments ignoriert.Any terminating NUL (U+0000) characters in s are ignored by the parsing operation, regardless of the value of the style argument.

Eine Zeichenfolge mit nur Dezimalziffern (die dem NumberStyles.None-Flag entspricht) wird immer erfolgreich analysiert.A string with decimal digits only (which corresponds to the NumberStyles.None flag) always parses successfully. Die meisten der verbleibenden NumberStyles Member steuern Elemente, die in dieser Eingabe Zeichenfolge vorhanden sein können, aber nicht vorhanden sein müssen.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in this input string. In der folgenden Tabelle wird angegeben, wie sich einzelne NumberStyles Elemente auf die Elemente auswirken, die in valuevorhanden sein können.The following table indicates how individual NumberStyles members affect the elements that may be present in value.

Nicht zusammengesetzte NumberStyles WerteNon-composite NumberStyles values Als Wert zulässige Elemente zusätzlich zu ZiffernElements permitted in value in addition to digits
None Nur Dezimalziffern.Decimal digits only.
AllowDecimalPoint Der Dezimaltrennzeichen (.) und fractional_digits Elemente.The decimal point (.) and fractional_digits elements. Fractional_digits müssen jedoch nur aus einer oder mehreren 0 Ziffern bestehen, oder die Methode gibt falsezurück.However, fractional_digits must consist of only one or more 0 digits, or the method returns false.
AllowExponent Das Zeichen "e" oder "e", das die Exponentialnotation angibt, sowie Exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits. Wenn value eine Zahl in Exponentialschreibweise darstellt, kann Sie keine Bruchteil-Komponente ungleich 0 (null) aufweisen.If value represents a number in exponential notation, it cannot have a non-zero, fractional component.
AllowLeadingWhite Das WS -Element am Anfang value.The ws element at the start of value.
AllowTrailingWhite Das WS -Element am Ende value.The ws element at the end of value.
AllowLeadingSign Das Vorzeichen Element vor Ziffern.The sign element before digits.
AllowTrailingSign Das Sign -Element nach Ziffern.The sign element after digits.
AllowParentheses Das Vorzeichen Element in der Form von Klammern, das den numerischen Wert einschließt.The sign element in the form of parentheses enclosing the numeric value.
AllowThousands Das Gruppen Trennzeichen (,).The group separator (,) element.
AllowCurrencySymbol Das Currency ($)-Element.The currency ($) element.
Currency Alle-Elemente.All elements. value kann jedoch keine hexadezimal Zahl oder eine Zahl in Exponentialnotation darstellen.However, value cannot represent a hexadecimal number or a number in exponential notation.
Float Das WS -Element am Anfang oder Ende value, Signieren am Anfang valueund das Dezimal Trennzeichen (.).The ws element at the start or end of value, sign at the start of value, and the decimal point (.) symbol. Der value-Parameter kann auch die Exponentialnotation verwenden.The value parameter can also use exponential notation.
Number Die Elemente WS, Sign, Group Separator (,) und Decimal Point (.).The ws, sign, group separator (,), and decimal point (.) elements.
Any Alle-Elemente.All elements. Allerdings kann value keine hexadezimal Zahl darstellen.However, value cannot represent a hexadecimal number.

Wenn das NumberStyles.AllowHexSpecifier-Flag verwendet wird, muss value ein Hexadezimalwert sein.If the NumberStyles.AllowHexSpecifier flag is used, value must be a hexadecimal value. Gültige hexadezimale Ziffern sind 0-9, a-f und a-f.Valid hexadecimal digits are 0-9, a-f, and A-F. Die einzigen anderen Flags, die in style vorhanden sein können, sind NumberStyles.AllowLeadingWhite und NumberStyles.AllowTrailingWhite.The only other flags that can be present in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (Die NumberStyles-Enumeration verfügt über einen zusammengesetzten Stil, HexNumber, der beide Leerzeichen enthält.)(The NumberStyles enumeration has a composite style, HexNumber, that includes both white-space flags.)

Hinweis

Wenn value die Zeichen folgen Darstellung einer hexadezimalen Zahl ist, kann Ihr keine Ergänzung (z. b. 0x oder &h) vorangestellt werden, die Sie als hexadezimale Zahl unterscheidet.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. Dies bewirkt, dass die Konvertierung fehlschlägt.This causes the conversion to fail.

Der provider-Parameter ist eine IFormatProvider Implementierung.The provider parameter is an IFormatProvider implementation. Die GetFormat-Methode gibt ein NumberFormatInfo Objekt zurück, das kulturspezifische Informationen zum Format von valuebereitstellt.Its GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of value. Der provider-Parameter kann eine der folgenden sein:The provider parameter can be any one of the following:

  • Ein CultureInfo-Objekt, das die Kultur darstellt, die Formatierungsinformationen bereitstellt.A CultureInfo object that represents the culture that supplies formatting information. Die GetFormat-Methode gibt das NumberFormatInfo Objekt zurück, das numerische Formatierungsinformationen für diese Kultur bereitstellt.Its GetFormat method returns the NumberFormatInfo object that provides numeric formatting information for that culture.

  • Ein NumberFormatInfo-Objekt, das numerische Formatierungsinformationen bereitstellt.A NumberFormatInfo object that provides numeric formatting information. (Die Implementierung von GetFormat nur sich selbst zurückgegeben.)(Its implementation of GetFormat just returns itself.)

  • Ein benutzerdefiniertes Objekt, das IFormatProviderimplementiert.A custom object that implements IFormatProvider. Die GetFormat-Methode instanziiert und gibt das NumberFormatInfo Objekt zurück, das Formatierungsinformationen bereitstellt.Its GetFormat method instantiates and returns the NumberFormatInfo object that provides formatting information.

Wenn provider nullist, wird das NumberFormatInfo-Objekt für die aktuelle Kultur verwendet.If provider is null, the NumberFormatInfo object for the current culture is used.

Siehe auch

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

Wichtig

Diese API ist nicht CLS-kompatibel.

Konvertiert die Spannendarstellung einer Zahl in einem angegebenen Stil und kulturspezifischen Format in das entsprechende SByte und gibt einen Wert zurück, der angibt, ob die Konvertierung erfolgreich abgeschlossen wurde.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);
[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

Parameter

s
ReadOnlySpan<Char>

Eine Spanne mit den Zeichen, die die zu konvertierende Zahl darstellen.A span containing the characters that represent the number to convert.

style
NumberStyles

Eine bitweise Kombination von Enumerationswerten, die das zulässige Format von s angibt.A bitwise combination of enumeration values that indicates the permitted format of s. Ein häufig angegebener Wert ist Integer.A typical value to specify is Integer.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu s bereitstellt.An object that supplies culture-specific formatting information about s.

result
SByte

Diese Methode gibt bei erfolgreicher Konvertierung den Wert der ganzen 8-Bit-Zahl mit Vorzeichen zurück, der der Zahl in s entspricht, und 0 (null), wenn die Konvertierung nicht durchgeführt werden konnte.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. Bei der Konvertierung tritt ein Fehler auf, wenn der s-Parameter null oder Empty ist, nicht in einem mit style kompatiblen Format vorliegt oder eine Zahl kleiner als MinValue oder größer als MaxValue darstellt.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. Dieser Parameter wird nicht initialisiert übergeben. Jeder Wert, der ursprünglich im bereitgestellten result überschrieben werden.This parameter is passed uninitialized; any value originally supplied in result will be overwritten.

Gibt zurück

true, wenn s erfolgreich konvertiert wurde, andernfalls false.true if s was converted successfully; otherwise, false.

Attribute

Gilt für: