SByte.Parse SByte.Parse SByte.Parse SByte.Parse Method

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.

Überlädt

Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und einem kulturabhängigen Format in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number that is in a specified style and culture-specific format to its 8-bit signed equivalent.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)
Parse(String, NumberStyles) Parse(String, NumberStyles) Parse(String, NumberStyles) Parse(String, NumberStyles)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number in a specified style to its 8-bit signed integer equivalent.

Parse(String) Parse(String) Parse(String) Parse(String)

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.

Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen kulturspezifischen Format in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number in a specified culture-specific format to its 8-bit signed integer equivalent.

Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

CLS-kompatible Alternative
System.Int16.Parse(String, NumberStyles, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und einem kulturabhängigen Format in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number that is in a specified style and culture-specific format to its 8-bit signed equivalent.

public:
 static System::SByte Parse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static sbyte Parse (string s, System.Globalization.NumberStyles style, IFormatProvider provider);
static member Parse : string * System.Globalization.NumberStyles * IFormatProvider -> sbyte
Public Shared Function Parse (s As String, style As NumberStyles, provider As IFormatProvider) As SByte

Parameter

s
String String String String

Eine Zeichenfolge, die die zu konvertierende Zahl enthält.A string that contains the number to convert. Die Zeichenfolge wird unter Verwendung des durch style angegebenen Formats interpretiert.The string is interpreted by using the style specified by style.

style
NumberStyles NumberStyles NumberStyles NumberStyles

Eine bitweise Kombination der Enumerationswerte, die die Stilelemente angeben, die in s vorhanden sein können.A bitwise combination of the enumeration values that indicates the style elements that can be present in s. Ein häufig angegebener Wert ist Integer.A typical value to specify is Integer.

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu s bereitstellt.An object that supplies culture-specific formatting information about s. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.If provider is null, the thread current culture is used.

Gibt zurück

Eine ganze 8-Bit-Zahl mit Vorzeichen, die der im s-Parameter angegebenen Zahl entspricht.An 8-bit signed byte value that is equivalent to the number specified in the s parameter.

Ausnahmen

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

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

s weist kein mit stylekompatibles Format auf.s is not in a format that is compliant with style.

s stellt eine Zahl dar, die kleiner als MinValue oder größer als MaxValue ist.s represents a number that is less than MinValue or greater than MaxValue.

- oder --or- s enthält Bruchziffern ungleich 0 (null).s includes non-zero, fractional digits.

Beispiele

Das folgende Beispiel veranschaulicht die Verwendung Parse(String, NumberStyles, IFormatProvider) der-Methode zum Konvertieren verschiedener Zeichen folgen Darstellungen von Zahlen in ganzzahlige Werte mit Vorzeichen.The following example illustrates the use of the Parse(String, NumberStyles, IFormatProvider) method to convert various string representations of numbers to signed integer values.

using System;
using System.Globalization;

public class SByteConversion
{
   NumberFormatInfo provider = NumberFormatInfo.CurrentInfo;

   public static void Main()
   {
      string stringValue;
      NumberStyles style;

      stringValue = "   123   ";
      style = NumberStyles.None;     
      CallParseOperation(stringValue, style);
      
      stringValue = "000,000,123";
      style = NumberStyles.Integer | NumberStyles.AllowThousands;
      CallParseOperation(stringValue, style);
      
      stringValue = "-100";
      style = NumberStyles.AllowLeadingSign;
      CallParseOperation(stringValue, style);
      
      stringValue = "100-";
      style = NumberStyles.AllowLeadingSign;
      CallParseOperation(stringValue, style);
      
      stringValue = "100-";
      style = NumberStyles.AllowTrailingSign;
      CallParseOperation(stringValue, style);
      
      stringValue = "$100";
      style = NumberStyles.AllowCurrencySymbol;
      CallParseOperation(stringValue, style);
      
      style = NumberStyles.Integer;
      CallParseOperation(stringValue, style);
      
      style = NumberStyles.AllowDecimalPoint;
      CallParseOperation("100.0", style);
      
      stringValue = "1e02";
      style = NumberStyles.AllowExponent;
      CallParseOperation(stringValue, style);
      
      stringValue = "(100)";
      style = NumberStyles.AllowParentheses;
      CallParseOperation(stringValue, style);
   }
   
   private static void CallParseOperation(string stringValue, 
                                          NumberStyles style)
   {                                          
      sbyte number;
      
      if (stringValue == null)
         Console.WriteLine("Cannot parse a null string...");
         
      try
      {
         number = sbyte.Parse(stringValue, style);
         Console.WriteLine("SByte.Parse('{0}', {1})) = {2}", 
                           stringValue, style, number);   
      }
      catch (FormatException)
      {
         Console.WriteLine("'{0}' and {1} throw a FormatException", 
                           stringValue, style);   
      }      
      catch (OverflowException)
      {
         Console.WriteLine("'{0}' is outside the range of a signed byte",
                           stringValue);
      }
   }
}
// The example displays the following information to the console:
//       '   123   ' and None throw a FormatException
//       SByte.Parse('000,000,123', Integer, AllowThousands)) = 123
//       SByte.Parse('-100', AllowLeadingSign)) = -100
//       '100-' and AllowLeadingSign throw a FormatException
//       SByte.Parse('100-', AllowTrailingSign)) = -100
//       SByte.Parse('$100', AllowCurrencySymbol)) = 100
//       '$100' and Integer throw a FormatException
//       SByte.Parse('100.0', AllowDecimalPoint)) = 100
//       SByte.Parse('1e02', AllowExponent)) = 100
//       SByte.Parse('(100)', AllowParentheses)) = -100
Imports System.Globalization

Module modMain
   Public Sub Main()
      Dim byteString As String 
      
      byteString = " 123"
      ParseString(byteString, NumberStyles.None)
      ParseString(byteString, NumberStyles.Integer)
      
      byteString = "3A"
      ParseString(byteString, NumberStyles.AllowHexSpecifier) 
      
      byteString = "21"
      ParseString(byteString, NumberStyles.Integer)
      ParseString(byteString, NumberStyles.AllowHexSpecifier)
      
      byteString = "-22"
      ParseString(byteString, NumberStyles.Integer)
      ParseString(byteString, NumberStyles.AllowParentheses)
      
      byteString = "(45)"
      ParseString(byteString, NumberStyles.AllowParentheses)
     
      byteString = "000,000,056"
      ParseString(byteString, NumberStyles.Integer)
      ParseString(byteString, NumberStyles.Integer Or NumberStyles.AllowThousands)
   End Sub
   
   Private Sub ParseString(value As String, style As NumberStyles)
      Dim number As SByte
      
      If value Is Nothing Then Console.WriteLine("Cannot parse a null string...") 
      
      Try
         number = SByte.Parse(value, style, NumberFormatInfo.CurrentInfo)
         Console.WriteLine("SByte.Parse('{0}', {1}) = {2}", value, style, number)   
      Catch e As FormatException
         Console.WriteLine("'{0}' and {1} throw a FormatException", value, style)   
      Catch e As OverflowException
         Console.WriteLine("'{0}' is outside the range of a signed byte",
                           value)
      End Try     
   End Sub
End Module
' The example displays the following information to the console:
'       ' 123' and None throw a FormatException
'       SByte.Parse(" 123", Integer)) = 123
'       SByte.Parse("3A", AllowHexSpecifier)) = 58
'       SByte.Parse("21", Integer)) = 21
'       SByte.Parse("21", AllowHexSpecifier)) = 33
'       SByte.Parse("-22", Integer)) = -22
'       '-22' and AllowParentheses throw a FormatException
'       SByte.Parse("(45)", AllowParentheses)) = -45
'       '000,000,056' and Integer throw a FormatException
'       SByte.Parse("000,000,056", Integer, AllowThousands)) = 56

Hinweise

Der style -Parameter definiert die Stilelemente (z. b. Leerzeichen oder das positive oder negative Vorzeichen Symbol), die s im-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 the positive or negative sign symbol) that are allowed in the s 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 von stylekann der s -Parameter die folgenden Elemente enthalten:Depending on the value of style, the s parameter may include the following elements:

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

Wenn style s enthält AllowHexSpecifier, kann der-Parameter die folgenden Elemente enthalten:If style includes AllowHexSpecifier, the s 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. Leerräume können am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingWhite -Flag enthält, und es kann am Ende von s angezeigt style werden, NumberStyles.AllowTrailingWhite wenn das-Flag enthält.White space can appear at the beginning of s if style includes the NumberStyles.AllowLeadingWhite flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ Ein kulturspezifisches Währungssymbol.A culture-specific currency symbol. Die Position in der Zeichenfolge wird durch die NumberFormatInfo.CurrencyPositivePattern -Eigenschaft der aktuellen Kultur definiert.Its position in the string is defined by the NumberFormatInfo.CurrencyPositivePattern property of the current culture. Das Währungssymbol der aktuellen Kultur kann in s angezeigt werden, wenn NumberStyles.AllowCurrencySymbol style das-Flag enthält.The current culture's currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Ein optionales Vorzeichen.An optional sign. Das Vorzeichen kann am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingSign -Flag enthält, und es kann am Ende s von style angezeigt werden NumberStyles.AllowTrailingSign , wenn das-Flag enthält.The sign can appear at the beginning of s if style includes the NumberStyles.AllowLeadingSign flag, and it can appear the end of s if style includes the NumberStyles.AllowTrailingSign flag. Klammern können in s verwendet werden, um einen negativen Wert anzugeben, wenn style das NumberStyles.AllowParentheses -Flag einschließt.Parentheses can be used in s 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 Dezimaltrennzeichen.A culture-specific decimal point symbol. Das Dezimaltrennzeichen der aktuellen Kultur kann in s auftreten, wenn style das NumberStyles.AllowDecimalPoint -Flag enthält.The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Ein oder mehrere Vorkommen der Ziffer 0-9, wenn style das NumberStyles.AllowExponent -Flag enthält, oder ein oder mehrere Vorkommen der Ziffer 0, wenn dies nicht der Fall ist.One or more occurrences of the digit 0-9 if style includes the NumberStyles.AllowExponent flag, or one or more occurrences of the digit 0 if it does not. Bruch Ziffern können nur in s vorkommen, wenn style das NumberStyles.AllowDecimalPoint -Flag enthält.Fractional digits can appear in s 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 s -Parameter kann eine Zahl in Exponentialnotation style darstellen, NumberStyles.AllowExponent wenn das-Flag enthält.The s 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 s -Parameter kann eine Zahl in Exponentialnotation style darstellen, NumberStyles.AllowExponent wenn das-Flag enthält.The s 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) s in werden vom Analyse-Vorgang unabhängig vom Wert style des 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 -Stil entspricht) wird immer erfolgreich analysiert.A string with decimal digits only (which corresponds to the NumberStyles.None style) always parses successfully. Die meisten der Verb NumberStyles leibenden 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 NumberStyles , wie sich einzelne Member auf die Elemente auswirken s, die in vorhanden sein können.The following table indicates how individual NumberStyles members affect the elements that may be present in s.

Nicht zusammengesetzte NumberStyles WerteNon-composite NumberStyles values In zugelassene s Elemente zusätzlich zu ZiffernElements permitted in s in addition to digits
NumberStyles.None Nur Dezimalziffern.Decimal digits only.
NumberStyles.AllowDecimalPoint Die Dezimaltrennzeichen (.) und fractional_digits Elemente.The decimal point (.) and fractional_digits elements. Wenn Style jedoch das NumberStyles.AllowExponent -Flag nicht enthält, muss fractional_digits aus nur einer oder mehreren 0 Ziffern bestehen; andernfalls wird eine OverflowException ausgelöst.However, if style does not include the NumberStyles.AllowExponent flag, fractional_digits must consist of only one or more 0 digits; otherwise, an OverflowException is thrown.
NumberStyles.AllowExponent Das Zeichen "e" oder "e", das die Exponentialnotation angibt, zusammen mit Exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits.
NumberStyles.AllowLeadingWhite Das WS -Element am Anfang von s.The ws element at the beginning of s.
NumberStyles.AllowTrailingWhite Das WS -Element am Ende von s.The ws element at the end of s.
NumberStyles.AllowLeadingSign Ein positives Vorzeichen vor Ziffern.A positive sign before digits.
NumberStyles.AllowTrailingSign Ein positives Vorzeichen nach Ziffern.A positive sign after digits.
NumberStyles.AllowParentheses Klammern vor und nach Ziffern , um einen negativen Wert anzugeben.Parentheses before and after digits to indicate a negative value.
NumberStyles.AllowThousands Das Gruppen Trennzeichen (,).The group separator (,) element. Obwohl das Gruppen Trennzeichen in sangezeigt werden kann, muss ihm nur eine oder mehrere 0-Ziffern vorangestellt sein.Although the group separator can appear in s, it must be preceded by only one or more 0 digits.
NumberStyles.AllowCurrencySymbol Das Currency ($)-Element.The currency ($) element.

Wenn das NumberStyles.AllowHexSpecifier -Flag verwendet wird s , muss ein Hexadezimalwert sein.If the NumberStyles.AllowHexSpecifier flag is used, s 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 kombiniert werden können, sind NumberStyles.AllowLeadingWhite und NumberStyles.AllowTrailingWhite.The only other flags that can be combined with it are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (Die NumberStyles -Enumeration enthält einen zusammengesetzten Zahlen NumberStyles.HexNumberStil,, der beide Leerzeichen enthält.)(The NumberStyles enumeration includes a composite number style, NumberStyles.HexNumber, that includes both white-space flags.)

Hinweis

Wenn der s -Parameter die Zeichen folgen Darstellung einer hexadezimalen Zahl ist, kann ihm keine Ergänzung vorangestellt werden ( 0x z &h. b. oder), die ihn als hexadezimale Zahl unterscheidet.If the s parameter 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 der Analyse Vorgang eine Ausnahme auslöst.This causes the parse operation to throw an exception.

Wenn s eine hexadezimale Zahl darstellt, Parse(String, NumberStyles) interpretiert die-Methode das Byte der höchsten Reihenfolge als Vorzeichen-Bit.If s represents a hexadecimal number, the Parse(String, NumberStyles) method interprets the high-order bit of the byte as a sign bit.

Der provider -Parameter ist IFormatProvider eine- GetFormat Implementierung, deren NumberFormatInfo -Methode ein-Objekt zurückgibt, das kulturspezifische sInformationen zum Format von bereitstellt.The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. Es gibt drei Möglichkeiten, den provider -Parameter zu verwenden, um benutzerdefinierte Formatierungsinformationen für den Analyse Vorgang bereitzustellen:There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • Sie können das tatsächliche NumberFormatInfo -Objekt übergeben, das Formatierungsinformationen bereitstellt.You can pass the actual NumberFormatInfo object that provides formatting information. (Die Implementierung von GetFormat gibt einfach selbst zurück.)(Its implementation of GetFormat simply returns itself.)

  • Sie können ein CultureInfo -Objekt übergeben, das die Kultur angibt, deren Formatierung verwendet werden soll.You can pass a CultureInfo object that specifies the culture whose formatting is to be used. Die NumberFormat -Eigenschaft stellt Formatierungsinformationen bereit.Its NumberFormat property provides formatting information.

  • Sie können eine benutzerdefinierte IFormatProvider -Implementierung übergeben.You can pass a custom IFormatProvider implementation. NumberFormatInfo Die- GetFormat Methode muss das-Objekt instanziieren und zurückgeben, das Formatierungsinformationen bereitstellt.Its GetFormat method must instantiate and return the NumberFormatInfo object that provides formatting information.

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

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

[System.CLSCompliant(false)]
public static sbyte Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Integer, IFormatProvider provider = null);
static member Parse : ReadOnlySpan<char> * System.Globalization.NumberStyles * IFormatProvider -> sbyte
Public Shared Function Parse (s As ReadOnlySpan(Of Char), Optional style As NumberStyles = System.Globalization.NumberStyles.Integer, Optional provider As IFormatProvider = null) As SByte

Parameter

Gibt zurück

Parse(String, NumberStyles) Parse(String, NumberStyles) Parse(String, NumberStyles) Parse(String, NumberStyles)

Wichtig

Diese API ist nicht CLS-kompatibel.

CLS-kompatible Alternative
System.Int16.Parse(String)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number in a specified style to its 8-bit signed integer equivalent.

public:
 static System::SByte Parse(System::String ^ s, System::Globalization::NumberStyles style);
[System.CLSCompliant(false)]
public static sbyte Parse (string s, System.Globalization.NumberStyles style);
static member Parse : string * System.Globalization.NumberStyles -> sbyte
Public Shared Function Parse (s As String, style As NumberStyles) As SByte

Parameter

s
String String String String

Eine Zeichenfolge, die eine zu konvertierende Zahl enthält.A string that contains a number to convert. Die Zeichenfolge wird unter Verwendung des durch style angegebenen Formats interpretiert.The string is interpreted using the style specified by style.

style
NumberStyles NumberStyles NumberStyles NumberStyles

Eine bitweise Kombination von Enumerationswerten, die die Stilelemente angibt, die in s vorhanden sein können.A bitwise combination of the enumeration values that indicates the style elements that can be present in s. Ein häufig angegebener Wert ist Integer.A typical value to specify is Integer.

Gibt zurück

Eine ganze 8-Bit-Zahl mit Vorzeichen, die der Zahl in s entspricht.An 8-bit signed integer that is equivalent to the number specified in s.

Ausnahmen

Das Format von s ist nicht mit style kompatibel.s is not in a format that is compliant with style.

s stellt eine Zahl dar, die kleiner als MinValue oder größer als MaxValue ist.s represents a number less than MinValue or greater than MaxValue.

- oder --or- s enthält Dezimalstellen ungleich 0 (null).s includes non-zero, fractional digits.

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 werden Zeichen folgen Darstellungen von SByte -Werten mit Parse(String, NumberStyles) der-Methode analysiert.The following example parses string representations of SByte values with the Parse(String, NumberStyles) method. Die aktuelle Kultur für das Beispiel ist "en-US".The current culture for the example is en-US.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      NumberStyles style;
      sbyte number;

      // Parse value with no styles allowed.
      string[] values1 = { " 121 ", "121", "-121" };
      style = NumberStyles.None;
      Console.WriteLine("Styles: {0}", style.ToString());
      foreach (string value in values1)
      {
         try {
            number = SByte.Parse(value, style);
            Console.WriteLine("   Converted '{0}' to {1}.", value, number);
         }   
         catch (FormatException) {
            Console.WriteLine("   Unable to parse '{0}'.", value);
         }
      }
      Console.WriteLine();
            
      // Parse value with trailing sign.
      style = NumberStyles.Integer | NumberStyles.AllowTrailingSign;
      string[] values2 = { " 103+", " 103 +", "+103", "(103)", "   +103  " };
      Console.WriteLine("Styles: {0}", style.ToString());
      foreach (string value in values2)
      {
         try {
            number = SByte.Parse(value, style);
            Console.WriteLine("   Converted '{0}' to {1}.", value, number);
         }   
         catch (FormatException) {
            Console.WriteLine("   Unable to parse '{0}'.", value);
         }      
         catch (OverflowException) {
            Console.WriteLine("   '{0}' is out of range of the SByte type.", value);         
         }
      }      
      Console.WriteLine();
   }
}
// The example displays the following output:
//       Styles: None
//          Unable to parse ' 121 '.
//          Converted '121' to 121.
//          Unable to parse '-121'.
//       
//       Styles: Integer, AllowTrailingSign
//          Converted ' 103+' to 103.
//          Converted ' 103 +' to 103.
//          Converted '+103' to 103.
//          Unable to parse '(103)'.
//          Converted '   +103  ' to 103.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim style As NumberStyles
      Dim number As SByte

      ' Parse value with no styles allowed.
      Dim values1() As String = { " 121 ", "121", "-121" }
      style = NumberStyles.None
      Console.WriteLine("Styles: {0}", style.ToString())
      For Each value As String In values1
         Try
            number = SByte.Parse(value, style)
            Console.WriteLine("   Converted '{0}' to {1}.", value, number)
         Catch e As FormatException
            Console.WriteLine("   Unable to parse '{0}'.", value)   
         End Try
      Next
      Console.WriteLine()
            
      ' Parse value with trailing sign.
      style = NumberStyles.Integer Or NumberStyles.AllowTrailingSign
      Dim values2() As String = { " 103+", " 103 +", "+103", "(103)", "   +103  " }
      Console.WriteLine("Styles: {0}", style.ToString())
      For Each value As String In values2
         Try
            number = SByte.Parse(value, style)
            Console.WriteLine("   Converted '{0}' to {1}.", value, number)
         Catch e As FormatException
            Console.WriteLine("   Unable to parse '{0}'.", value)   
         Catch e As OverflowException
            Console.WriteLine("   '{0}' is out of range of the SByte type.", value)         
         End Try
      Next      
      Console.WriteLine()
   End Sub
End Module
' The example displays the following output:
'       Styles: None
'          Unable to parse ' 121 '.
'          Converted '121' to 121.
'          Unable to parse '-121'.
'       
'       Styles: Integer, AllowTrailingSign
'          Converted ' 103+' to 103.
'          Converted ' 103 +' to 103.
'          Converted '+103' to 103.
'          Unable to parse '(103)'.
'          Converted '   +103  ' to 103.

Hinweise

Der style -Parameter definiert die Stilelemente (z. b. Leerzeichen oder das positive oder negative Vorzeichen Symbol), die s im-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 the positive or negative sign symbol) that are allowed in the s 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 von stylekann der s -Parameter die folgenden Elemente enthalten:Depending on the value of style, the s parameter may include the following elements:

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

Wenn style s enthält NumberStyles.AllowHexSpecifier, kann der-Parameter die folgenden Elemente enthalten:If style includes NumberStyles.AllowHexSpecifier, the s parameter may contain 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. Leerräume s können am Anfang von angezeigt werden, wenn style das NumberStyles.AllowLeadingWhite -Flag enthält, und es kann am Ende von s angezeigt werden, wenn NumberStyles.AllowTrailingWhite Style das-Flag enthält.White space can appear at the beginning of s if style includes the NumberStyles.AllowLeadingWhite flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingWhite flag.
$ Ein kulturspezifisches Währungssymbol.A culture-specific currency symbol. Die Position in der Zeichenfolge wird durch die NumberFormatInfo.CurrencyPositivePattern -Eigenschaft der aktuellen Kultur definiert.Its position in the string is defined by the NumberFormatInfo.CurrencyPositivePattern property of the current culture. Das Währungssymbol der aktuellen Kultur kann in s angezeigt werden, wenn NumberStyles.AllowCurrencySymbol style das-Flag enthält.The current culture's currency symbol can appear in s if style includes the NumberStyles.AllowCurrencySymbol flag.
signsign Ein optionales Vorzeichen.An optional sign. Das Vorzeichen kann am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingSign -Flag enthält, und es kann am Ende von s angezeigt style werden, NumberStyles.AllowTrailingSign wenn das-Flag enthält.The sign can appear at the beginning of s if style includes the NumberStyles.AllowLeadingSign flag, and it can appear at the end of s if style includes the NumberStyles.AllowTrailingSign flag. Klammern können in s verwendet werden, um einen negativen Wert anzugeben, wenn style das NumberStyles.AllowParentheses -Flag einschließt.Parentheses can be used in s 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 Dezimaltrennzeichen.A culture-specific decimal point symbol. Das Dezimaltrennzeichen der aktuellen Kultur kann in s auftreten, wenn style das NumberStyles.AllowDecimalPoint -Flag enthält.The current culture's decimal point symbol can appear in s if style includes the NumberStyles.AllowDecimalPoint flag.
fractional_digitsfractional_digits Ein oder mehrere Vorkommen der Ziffer 0-9, wenn style das NumberStyles.AllowExponent -Flag enthält, oder ein oder mehrere Vorkommen der Ziffer 0, wenn dies nicht der Fall ist.One or more occurrences of the digit 0-9 if style includes the NumberStyles.AllowExponent flag, or one or more occurrences of the digit 0 if it does not. Bruch Ziffern können nur in s vorkommen, wenn style das NumberStyles.AllowDecimalPoint -Flag enthält.Fractional digits can appear in s 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 s -Parameter kann eine Zahl in Exponentialnotation style darstellen, NumberStyles.AllowExponent wenn das-Flag enthält.The s parameter can represent a number in exponential notation if style includes the NumberStyles.AllowExponent flag.
exponential_digitsexponential_digits Ein oder mehrere Vorkommen der Ziffer 0-9.One or more occurrences of the digit 0-9. Der s -Parameter kann eine Zahl in Exponentialnotation style darstellen, NumberStyles.AllowExponent wenn das-Flag enthält.The s 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) s in werden vom Analyse-Vorgang unabhängig vom Wert style des 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 -Stil entspricht) wird immer erfolgreich analysiert.A string with decimal digits only (which corresponds to the NumberStyles.None style) always parses successfully. Die meisten der Verb NumberStyles leibenden Member steuern Elemente, die möglicherweise vorhanden sind, jedoch nicht in der Eingabe Zeichenfolge vorhanden sein müssen.Most of the remaining NumberStyles members control elements that may be present, but are not required to be present, in the input string. In der folgenden Tabelle wird angegeben NumberStyles , wie sich einzelne Member auf die Elemente auswirken s, die in vorhanden sein können.The following table indicates how individual NumberStyles members affect the elements that may be present in s.

Nicht zusammengesetzte Werte für NummerierungenNon-composite NumberStyles values In s zulässige Elemente zusätzlich zu ZiffernElements permitted in s in addition to digits
NumberStyles.None Nur Dezimalziffern.Decimal digits only.
NumberStyles.AllowDecimalPoint Die Dezimaltrennzeichen (.) und fractional_digits Elemente.The decimal point (.) and fractional_digits elements. Wenn style OverflowException das NumberStyles.AllowExponent -Flag jedoch nicht enthält, muss fractional_digits aus nur einer oder mehreren 0 Ziffern bestehen. andernfalls wird eine ausgelöst.However, if style does not include the NumberStyles.AllowExponent flag, fractional_digits must consist of only one or more 0 digits; otherwise, an OverflowException is thrown.
NumberStyles.AllowExponent Das Zeichen "e" oder "e", das die Exponentialnotation angibt, zusammen mit Exponential_digits.The "e" or "E" character, which indicates exponential notation, along with exponential_digits.
NumberStyles.AllowLeadingWhite Das WS -Element am Anfang von s.The ws element at the beginning of s.
NumberStyles.AllowTrailingWhite Das WS -Element am Ende von s.The ws element at the end of s.
NumberStyles.AllowLeadingSign Ein positives Vorzeichen vor Ziffern.A positive sign before digits.
NumberStyles.AllowTrailingSign Ein positives Vorzeichen nach Ziffern.A positive sign after digits.
NumberStyles.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.
NumberStyles.AllowThousands Das Gruppen Trennzeichen (,).The group separator (,) element. Obwohl das Gruppen Trennzeichen in sangezeigt werden kann, muss ihm nur eine oder mehrere 0-Ziffern vorangestellt sein.Although the group separator can appear in s, it must be preceded by only one or more 0 digits.
NumberStyles.AllowCurrencySymbol Das Currency ($)-Element.The currency ($) element.

Wenn das NumberStyles.AllowHexSpecifier -Flag verwendet wird s , muss ein Hexadezimalwert sein.If the NumberStyles.AllowHexSpecifier flag is used, s 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. Ein Präfix, z. b. "0x", wird nicht unterstützt und bewirkt, dass der Analyse Vorgang fehlschlägt.A prefix such as "0x" is not supported and causes the parse operation to fail. Die einzigen anderen Flags, die in style enthalten sein können, sind NumberStyles.AllowTrailingWhite NumberStyles.AllowLeadingWhite und.The only other flags that can be combined included in style are NumberStyles.AllowLeadingWhite and NumberStyles.AllowTrailingWhite. (Die NumberStyles -Enumeration enthält einen zusammengesetzten Zahlen NumberStyles.HexNumberStil,, der beide Leerzeichen enthält.)(The NumberStyles enumeration includes a composite number style, NumberStyles.HexNumber, that includes both white-space flags.)

Hinweis

Wenn der s -Parameter die Zeichen folgen Darstellung einer hexadezimalen Zahl ist, kann ihm keine Ergänzung vorangestellt werden ( 0x z &h. b. oder), die ihn als hexadezimale Zahl unterscheidet.If the s parameter 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 der Analyse Vorgang eine Ausnahme auslöst.This causes the parse operation to throw an exception.

Wenn s eine hexadezimale Zahl darstellt, Parse(String, NumberStyles) interpretiert die-Methode das Byte der höchsten Reihenfolge als Vorzeichen-Bit.If s represents a hexadecimal number, the Parse(String, NumberStyles) method interprets the high-order bit of the byte as a sign bit.

Der s -Parameter wird mithilfe der Formatierungsinformationen in einem NumberFormatInfo -Objekt analysiert, das für die aktuelle System Kultur initialisiert wird.The s parameter is parsed by using the formatting information in a NumberFormatInfo object that is initialized for the current system culture. Um die Formatierungsinformationen einer anderen Kultur zu verwenden, müssen Parse(String, NumberStyles, IFormatProvider) Sie die-Überladung aufrufen.To use the formatting information of some other culture, call the Parse(String, NumberStyles, IFormatProvider) overload.

Siehe auch

Parse(String) Parse(String) Parse(String) Parse(String)

Wichtig

Diese API ist nicht CLS-kompatibel.

CLS-kompatible Alternative
System.Int16.Parse(String)

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.

public:
 static System::SByte Parse(System::String ^ s);
[System.CLSCompliant(false)]
public static sbyte Parse (string s);
static member Parse : string -> sbyte
Public Shared Function Parse (s As String) As SByte

Parameter

s
String String String String

Eine Zeichenfolge, die eine zu konvertierende Zahl darstellt.A string that represents a number to convert. Die Zeichenfolge wird unter Verwendung des Integer-Formats interpretiert.The string is interpreted using the Integer style.

Gibt zurück

Eine ganze 8-Bit-Zahl mit Vorzeichen, die der Zahl im s-Parameter entspricht.An 8-bit signed integer that is equivalent to the number contained in the s parameter.

Ausnahmen

s besteht nicht ausschließlich aus einem optionalen Vorzeichen und einer Folge von Ziffern zwischen 0 und 9.s does not consist of an optional sign followed by a sequence of digits (zero through nine).

s stellt eine Zahl dar, die kleiner als MinValue oder größer als MaxValue ist.s represents a number less than MinValue or greater than MaxValue.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie ein Zeichen folgen Wert mithilfe der Parse -Methode in einen Byte-Wert mit Vorzeichen konvertiert wird.The following example demonstrates how to convert a string value into a signed byte value using the Parse method. Daraufhin wird der resultierende Byte-Wert mit Vorzeichen in der Konsole angezeigt.The resulting signed byte value is then displayed to the console.

// Define an array of numeric strings.
string[] values = { "-16", "  -3", "+ 12", " +12 ", "  12  ",
                    "+120", "(103)", "192", "-160" };
                           
// Parse each string and display the result.
foreach (string value in values)
{
   try {
      Console.WriteLine("Converted '{0}' to the SByte value {1}.",
                        value, SByte.Parse(value));
   }
   catch (FormatException) {
      Console.WriteLine("'{0}' cannot be parsed successfully by SByte type.",
                        value);
   }                              
   catch (OverflowException) {
      Console.WriteLine("'{0}' is out of range of the SByte type.",
                        value);
   }                                                                        
}
// The example displays the following output:
//       Converted '-16' to the SByte value -16.
//       Converted '  -3' to the SByte value -3.
//       '+ 12' cannot be parsed successfully by SByte type.
//       Converted ' +12 ' to the SByte value 12.
//       Converted '  12  ' to the SByte value 12.
//       Converted '+120' to the SByte value 120.
//       '(103)' cannot be parsed successfully by SByte type.
//       '192' is out of range of the SByte type.
//       '-160' is out of range of the SByte type.
' Define an array of numeric strings.
Dim values() As String = { "-16", "  -3", "+ 12", " +12 ", "  12  ", _
                           "+120", "(103)", "192", "-160" }
                           
' Parse each string and display the result.
For Each value As String In values
   Try
      Console.WriteLine("Converted '{0}' to the SByte value {1}.", _
                        value, SByte.Parse(value))
   Catch e As FormatException
      Console.WriteLine("'{0}' cannot be parsed successfully by SByte type.", _
                        value)
   Catch e As OverflowException
      Console.WriteLine("'{0}' is out of range of the SByte type.", _
                        value)
   End Try                                                                        
Next        
' The example displays the following output:
'       Converted '-16' to the SByte value -16.
'       Converted '  -3' to the SByte value -3.
'       '+ 12' cannot be parsed successfully by SByte type.
'       Converted ' +12 ' to the SByte value 12.
'       Converted '  12  ' to the SByte value 12.
'       Converted '+120' to the SByte value 120.
'       '(103)' cannot be parsed successfully by SByte type.
'       '192' is out of range of the SByte type.
'       '-160' is out of range of the SByte type.

Hinweise

Der s -Parameter enthält eine Reihe von folgenden Formen:The s parameter contains a number of the 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.
Zifferndigits Eine Sequenz von Ziffern zwischen 0 und 9.A sequence of digits ranging from 0 to 9.

Der s -Parameter wird mit dem NumberStyles.Integer -Stil interpretiert.The s parameter is interpreted using the NumberStyles.Integer style. Zusätzlich zu den Dezimalziffern des Byte Werts sind nur führende und nachfolgende Leerzeichen mit einem vorangestellten positiven oder negativen Vorzeichen zulässig.In addition to the byte value's decimal digits, only leading and trailing spaces with a leading positive or negative sign are allowed. Um die Stilelemente explizit zu definieren, die in svorhanden sein können, verwenden Sie entweder die Parse(String, NumberStyles) -Methode oder die Parse(String, NumberStyles, IFormatProvider) -Methode.To explicitly define the style elements that can be present in s, use either the Parse(String, NumberStyles) or the Parse(String, NumberStyles, IFormatProvider) method.

Der s -Parameter wird mithilfe der Formatierungsinformationen in einer NumberFormatInfo analysiert, die für die aktuelle System Kultur initialisiert wird.The s parameter is parsed by using the formatting information in a NumberFormatInfo that is initialized for the current system culture. Weitere Informationen finden Sie unter NumberFormatInfo.CurrentInfo.For more information, see NumberFormatInfo.CurrentInfo. Verwenden Sie die Parse(String, NumberStyles, IFormatProvider) -Methode, um eine Zeichenfolge mithilfe der Formatierungsinformationen einer anderen Kultur zu analysieren.To parse a string by using the formatting information of some other culture, use the Parse(String, NumberStyles, IFormatProvider) method.

Siehe auch

Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider)

Wichtig

Diese API ist nicht CLS-kompatibel.

CLS-kompatible Alternative
System.Int16.Parse(String)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen kulturspezifischen Format in die entsprechende 8-Bit-Ganzzahl mit Vorzeichen.Converts the string representation of a number in a specified culture-specific format to its 8-bit signed integer equivalent.

public:
 static System::SByte Parse(System::String ^ s, IFormatProvider ^ provider);
[System.CLSCompliant(false)]
public static sbyte Parse (string s, IFormatProvider provider);
static member Parse : string * IFormatProvider -> sbyte
Public Shared Function Parse (s As String, provider As IFormatProvider) As SByte

Parameter

s
String String String String

Eine Zeichenfolge, die eine zu konvertierende Zahl darstellt.A string that represents a number to convert. Die Zeichenfolge wird unter Verwendung des Integer-Formats interpretiert.The string is interpreted using the Integer style.

provider
IFormatProvider IFormatProvider IFormatProvider IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu s bereitstellt.An object that supplies culture-specific formatting information about s. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.If provider is null, the thread current culture is used.

Gibt zurück

Eine ganze 8-Bit-Zahl mit Vorzeichen, die der Zahl in s entspricht.An 8-bit signed integer that is equivalent to the number specified in s.

Ausnahmen

s weist nicht das richtige Format auf.s is not in the correct format.

s stellt eine Zahl dar, die kleiner als MinValue oder größer als MaxValue ist.s represents a number less than MinValue or greater than MaxValue.

Beispiele

Im folgenden Beispiel wird ein Benutzer NumberFormatInfo definiertes-Objekt definiert, das die Tilde (~) als negatives Vorzeichen definiert.The following example defines a custom NumberFormatInfo object that defines the tilde (~) as the negative sign. Anschließend analysiert er eine Reihe numerischer Zeichen folgen mit diesem Benutzer NumberFormatInfo definierten-Objekt sowie ein CultureInfo -Objekt, das die invariante Kultur darstellt.It then parses a number of numeric strings using this custom NumberFormatInfo object as well as a CultureInfo object that represents the invariant culture.

using System;
using System.Globalization;

public class Example
{
   public static void Main()
   {
      NumberFormatInfo nf = new NumberFormatInfo();
      nf.NegativeSign = "~"; 
      
      string[] values = { "-103", "+12", "~16", "  1", "~255" };
      IFormatProvider[] providers = { nf, CultureInfo.InvariantCulture };
      
      foreach (IFormatProvider provider in providers)
      {
         Console.WriteLine("Conversions using {0}:", ((object) provider).GetType().Name);
         foreach (string value in values)
         {
            try {
               Console.WriteLine("   Converted '{0}' to {1}.", 
                                 value, SByte.Parse(value, provider));
            }                     
            catch (FormatException) {
               Console.WriteLine("   Unable to parse '{0}'.", value);   
            }
            catch (OverflowException) {
               Console.WriteLine("   '{0}' is out of range of the SByte type.", value);         
            }
         }
      }      
   }
}
// The example displays the following output:
//       Conversions using NumberFormatInfo:
//          Unable to parse '-103'.
//          Converted '+12' to 12.
//          Converted '~16' to -16.
//          Converted '  1' to 1.
//          '~255' is out of range of the SByte type.
//       Conversions using CultureInfo:
//          Converted '-103' to -103.
//          Converted '+12' to 12.
//          Unable to parse '~16'.
//          Converted '  1' to 1.
//          Unable to parse '~255'.
Imports System.Globalization

Module Example
   Public Sub Main()
      Dim nf As New NumberFormatInfo()
      nf.NegativeSign = "~" 
      
      Dim values() As String = { "-103", "+12", "~16", "  1", "~255" }
      Dim providers() As IFormatProvider = { nf, CultureInfo.InvariantCulture }
      
      For Each provider As IFormatProvider In providers
         Console.WriteLine("Conversions using {0}:", CObj(provider).GetType().Name)
         For Each value As String In values
            Try
               Console.WriteLine("   Converted '{0}' to {1}.", _
                                 value, SByte.Parse(value, provider))
            Catch e As FormatException
               Console.WriteLine("   Unable to parse '{0}'.", value)   
            Catch e As OverflowException
               Console.WriteLine("   '{0}' is out of range of the SByte type.", value)         
            End Try
         Next
      Next      
   End Sub
End Module
' The example displays '
'       Conversions using NumberFormatInfo:
'          Unable to parse '-103'.
'          Converted '+12' to 12.
'          Converted '~16' to -16.
'          Converted '  1' to 1.
'          '~255' is out of range of the SByte type.
'       Conversions using CultureInfo:
'          Converted '-103' to -103.
'          Converted '+12' to 12.
'          Unable to parse '~16'.
'          Converted '  1' to 1.
'          Unable to parse '~255'.

Hinweise

Der s -Parameter enthält eine Reihe von folgenden Formen:The s parameter contains a number of the 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.
Zifferndigits Eine Sequenz von Ziffern zwischen 0 und 9.A sequence of digits ranging from 0 to 9.

Der s -Parameter wird mit dem Integer -Stil interpretiert.The s parameter is interpreted using the Integer style. Zusätzlich zu den Dezimalziffern des Byte Werts sind nur führende und nachfolgende Leerzeichen mit einem vorangestellten Zeichen zulässig.In addition to the byte value's decimal digits, only leading and trailing spaces with a leading sign are allowed. Verwenden Sie die Parse(String, NumberStyles, IFormatProvider) -Methode, um die Stilelemente mit den kulturspezifischen Formatierungsinformationen, sdie in vorhanden sein können, explizit zu definieren.To explicitly define the style elements with the culture-specific formatting information that can be present in s, use the Parse(String, NumberStyles, IFormatProvider) method.

Der provider -Parameter ist IFormatProvider eine- GetFormat Implementierung, deren NumberFormatInfo -Methode ein-Objekt zurückgibt, das kulturspezifische sInformationen zum Format von bereitstellt.The provider parameter is an IFormatProvider implementation whose GetFormat method returns a NumberFormatInfo object that provides culture-specific information about the format of s. Es gibt drei Möglichkeiten, den provider -Parameter zu verwenden, um benutzerdefinierte Formatierungsinformationen für den Analyse Vorgang bereitzustellen:There are three ways to use the provider parameter to supply custom formatting information to the parse operation:

  • Sie können das tatsächliche NumberFormatInfo -Objekt übergeben, das Formatierungsinformationen bereitstellt.You can pass the actual NumberFormatInfo object that provides formatting information. (Die Implementierung von GetFormat gibt einfach selbst zurück.)(Its implementation of GetFormat simply returns itself.)

  • Sie können ein CultureInfo -Objekt übergeben, das die Kultur angibt, deren Formatierung verwendet werden soll.You can pass a CultureInfo object that specifies the culture whose formatting is to be used. Die NumberFormat -Eigenschaft stellt Formatierungsinformationen bereit.Its NumberFormat property provides formatting information.

  • Sie können eine benutzerdefinierte IFormatProvider -Implementierung übergeben.You can pass a custom IFormatProvider implementation. NumberFormatInfo Die- GetFormat Methode muss das-Objekt instanziieren und zurückgeben, das Formatierungsinformationen bereitstellt.Its GetFormat method must instantiate and return the NumberFormatInfo object that provides formatting information.

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

Siehe auch

Gilt für: