Byte.Parse Methode

Definition

Wandelt die angegebene Zeichenfolgendarstellung einer Zahl in ihre Byte-Entsprechung um.

Überlädt

Parse(String, NumberStyles, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und kulturabhängigen Format in das entsprechende Byte.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Konvertiert die Spannendarstellung einer Zahl in einem angegebenen Stil und kulturabhängigen Format in das entsprechende Byte.

Parse(ReadOnlySpan<Byte>, NumberStyles, IFormatProvider)

Analysiert eine Spanne von UTF-8-Zeichen in einen Wert.

Parse(String, IFormatProvider)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen kulturspezifischen Format in die Byte-Entsprechung.

Parse(String, NumberStyles)

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil in die Byte-Entsprechung.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Analysiert eine Spanne von Zeichen in einen Wert.

Parse(ReadOnlySpan<Byte>, IFormatProvider)

Analysiert eine Spanne von UTF-8-Zeichen in einen Wert.

Parse(String)

Wandelt die angegebene Zeichenfolgendarstellung einer Zahl in ihre Byte-Entsprechung um.

Parse(String, NumberStyles, IFormatProvider)

Source:
Byte.cs
Source:
Byte.cs
Source:
Byte.cs

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil und kulturabhängigen Format in das entsprechende Byte.

public:
 static System::Byte Parse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider);
public:
 static System::Byte Parse(System::String ^ s, System::Globalization::NumberStyles style, IFormatProvider ^ provider) = System::Numerics::INumberBase<System::Byte>::Parse;
public static byte Parse (string s, System.Globalization.NumberStyles style, IFormatProvider provider);
public static byte Parse (string s, System.Globalization.NumberStyles style, IFormatProvider? provider);
static member Parse : string * System.Globalization.NumberStyles * IFormatProvider -> byte
Public Shared Function Parse (s As String, style As NumberStyles, provider As IFormatProvider) As Byte

Parameter

s
String

Eine Zeichenfolge, die eine zu konvertierende Zahl enthält. Die Zeichenfolge wird unter Verwendung des durch style angegebenen Formats interpretiert.

style
NumberStyles

Eine bitweise Kombination von Enumerationswerten, die die Stilelemente angeben, die in s vorhanden sein können. Ein häufig angegebener Wert ist Integer.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Informationen zum Format von s bereitstellt. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.

Gibt zurück

Ein Bytewert, der der Zahl in s entspricht.

Implementiert

Ausnahmen

s ist null.

s weist nicht das richtige Format auf.

s stellt eine Zahl dar, die kleiner als Byte.MinValue oder größer als Byte.MaxValue ist.

- oder -

s enthält Dezimalstellen ungleich 0 (null).

style ist kein NumberStyles-Wert.

- oder -

style ist keine Kombination von AllowHexSpecifier- und HexNumber-Werten.

Beispiele

Im folgenden Codebeispiel werden Zeichenfolgendarstellungen von Byte Werten mit dieser Überladung der Byte.Parse(String, NumberStyles, IFormatProvider) -Methode analysiert.

NumberStyles style;
CultureInfo^ culture;
String^ value;
Byte number;

// Parse number with decimals.
// NumberStyles.Float includes NumberStyles.AllowDecimalPoint.
style = NumberStyles::Float;     
culture = CultureInfo::CreateSpecificCulture("fr-FR");
value = "12,000";

number = Byte::Parse(value, style, culture);
Console::WriteLine("Converted '{0}' to {1}.", value, number);

culture = CultureInfo::CreateSpecificCulture("en-GB");
try
{
   number = Byte::Parse(value, style, culture);
   Console::WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException^) {
   Console::WriteLine("Unable to parse '{0}'.", value); }   

value = "12.000";
number = Byte::Parse(value, style, culture);
Console::WriteLine("Converted '{0}' to {1}.", value, number);
// The example displays the following output to the console:
//       Converted '12,000' to 12.
//       Unable to parse '12,000'.
//       Converted '12.000' to 12.
NumberStyles style;
CultureInfo culture;
string value;
byte number;

// Parse number with decimals.
// NumberStyles.Float includes NumberStyles.AllowDecimalPoint.
style = NumberStyles.Float;
culture = CultureInfo.CreateSpecificCulture("fr-FR");
value = "12,000";

number = Byte.Parse(value, style, culture);
Console.WriteLine("Converted '{0}' to {1}.", value, number);

culture = CultureInfo.CreateSpecificCulture("en-GB");
try
{
   number = Byte.Parse(value, style, culture);
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException) {
   Console.WriteLine("Unable to parse '{0}'.", value); }

value = "12.000";
number = Byte.Parse(value, style, culture);
Console.WriteLine("Converted '{0}' to {1}.", value, number);
// The example displays the following output to the console:
//       Converted '12,000' to 12.
//       Unable to parse '12,000'.
//       Converted '12.000' to 12.
// Parse number with decimals.
// NumberStyles.Float includes NumberStyles.AllowDecimalPoint.
let style = NumberStyles.Float
let culture = CultureInfo.CreateSpecificCulture "fr-FR"
let value = "12,000"

let number = Byte.Parse(value, style, culture)
printfn $"Converted '{value}' to {number}."

let culture = CultureInfo.CreateSpecificCulture "en-GB"
try
    let number = Byte.Parse(value, style, culture)
    printfn $"Converted '{value}' to {number}."
with :? FormatException ->
    printfn $"Unable to parse '{value}'."

let value = "12.000"
let number = Byte.Parse(value, style, culture)
printfn $"Converted '{value}' to {number}."

// The example displays the following output to the console:
//       Converted '12,000' to 12.
//       Unable to parse '12,000'.
//       Converted '12.000' to 12.
Dim style As NumberStyles
Dim culture As CultureInfo
Dim value As String
Dim number As Byte

' Parse number with decimals.
' NumberStyles.Float includes NumberStyles.AllowDecimalPoint.
style = NumberStyles.Float       
culture = CultureInfo.CreateSpecificCulture("fr-FR")
value = "12,000"

number = Byte.Parse(value, style, culture)
Console.WriteLine("Converted '{0}' to {1}.", value, number)

culture = CultureInfo.CreateSpecificCulture("en-GB")
Try
   number = Byte.Parse(value, style, culture)
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", value)   
End Try      

value = "12.000"
number = Byte.Parse(value, style, culture)
Console.WriteLine("Converted '{0}' to {1}.", value, number)
' The example displays the following output to the console:
'       Converted '12,000' to 12.
'       Unable to parse '12,000'.
'       Converted '12.000' to 12.

Hinweise

Der style Parameter definiert die Stilelemente (z. B. Leerzeichen oder positive Vorzeichen), die im s Parameter zulässig sind, damit der Analysevorgang erfolgreich ist. Es muss sich um eine Kombination von Bitflags aus der NumberStyles Enumeration handeln. Abhängig vom Wert von stylekann der s Parameter die folgenden Elemente enthalten:

[ws] [$] [Sign]digits[.fractional_digits][e[sign]digits][ws]

Oder, wenn der style Parameter enthält AllowHexSpecifier:

[ws]hexdigits[ws]

Elemente in eckigen Klammern ([ und ]) sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element Beschreibung
ws Optionaler Leerraum. Leerzeichen können am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingWhite Flag enthalten ist, oder am Ende von s , wenn style das NumberStyles.AllowTrailingWhite Flag enthält.
$ Ein kulturspezifisches Währungssymbol. Seine Position in der Zeichenfolge wird durch die NumberFormatInfo.CurrencyPositivePattern -Eigenschaft des Objekts definiert, das NumberFormatInfo von der GetFormat -Methode des provider Parameters zurückgegeben wird. Das Währungssymbol kann in s angezeigt werden, wenn style das NumberStyles.AllowCurrencySymbol Flag enthält.
sign Ein optionales positives Vorzeichen. (Die -Methode löst eine aus OverflowException , wenn in sein negatives Vorzeichen vorhanden ist.) Das Zeichen kann am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingSign Flag enthält, oder am Ende von s , wenn style das NumberStyles.AllowTrailingSign Flag enthält.
Zahlen Eine Sequenz von Ziffern von 0 bis 9.
. Ein kulturspezifisches Dezimaltrennzeichen. Das Dezimaltrennzeichensymbol der von provider angegebenen Kultur kann in s angezeigt werden, wenn style das NumberStyles.AllowDecimalPoint Flag enthält.
fractional_digits Mindestens ein Vorkommen der Ziffer 0. Bruchstellen können nur in s angezeigt werden, wenn style das NumberStyles.AllowDecimalPoint Flag enthalten ist.
e Das Zeichen e oder E, das angibt, dass der Wert in exponentieller Notation dargestellt wird. Der s-Parameter kann eine Zahl in exponentieller Notation darstellen, wenn style das NumberStyles.AllowExponent Flag enthalten ist.
hexdigits Eine Sequenz von Hexadezimalstellen von 0 bis f oder 0 bis F.

Hinweis

Alle endenden NUL-Zeichen (U+0000) in s werden vom Analysevorgang ignoriert, unabhängig vom Wert des style Arguments.

Eine Zeichenfolge nur mit Dezimalstellen (die der NumberStyles.None Formatvorlage entspricht) analysiert immer erfolgreich. Die meisten der verbleibenden NumberStyles Member steuern Elemente, die in dieser Eingabezeichenfolge möglicherweise vorhanden sein, aber nicht erforderlich sind. Die folgende Tabelle gibt an, wie sich einzelne NumberStyles Member auf die Elemente auswirken, die in svorhanden sein können.

Nicht zusammengesetzte NumberStyles-Werte Zulässige Elemente in s zusätzlich zu Ziffern
NumberStyles.None Nur Dezimalstellen.
NumberStyles.AllowDecimalPoint Die Elemente . und fractional_digits . Allerdings darf fractional_digits nur aus einer oder mehreren 0 Ziffern bestehen, oder es wird eine OverflowException ausgelöst.
NumberStyles.AllowExponent Der s Parameter kann auch exponentielle Notation verwenden.
NumberStyles.AllowLeadingWhite Das ws-Element am Anfang von s.
NumberStyles.AllowTrailingWhite Das ws-Element am Ende von s.
NumberStyles.AllowLeadingSign Vor Ziffern kann ein positives Vorzeichen angezeigt werden.
NumberStyles.AllowTrailingSign Ein positives Vorzeichen kann nach Ziffern angezeigt werden.
NumberStyles.AllowParentheses Obwohl dieses Flag unterstützt wird, führt die Verwendung von Klammern in zu s einem OverflowException.
NumberStyles.AllowThousands Obwohl das Gruppentrennzeichensymbol in sangezeigt werden kann, kann ihm nur eine oder mehrere 0 Ziffern vorangestellt werden.
NumberStyles.AllowCurrencySymbol Das $-Element.

Wenn das NumberStyles.AllowHexSpecifier Flag verwendet wird, s muss ein Hexadezimalwert ohne Präfix sein. Beispielsweise analysiert "F3" erfolgreich, "0xF3" jedoch nicht. Die einzigen anderen Flags, die in style vorhanden sein können, sind NumberStyles.AllowLeadingWhite und NumberStyles.AllowTrailingWhite. (Die NumberStyles Enumeration weist eine zusammengesetzte Zahlenformatvorlage auf, NumberStyles.HexNumberdie beide Leerzeichenflags enthält.)

Der provider Parameter ist eine IFormatProvider Implementierung, z. B. ein - oder CultureInfo -NumberFormatInfoObjekt. Der provider Parameter stellt kulturspezifische Informationen bereit, die bei der Analyse verwendet werden. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.

Weitere Informationen

Gilt für:

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)

Source:
Byte.cs
Source:
Byte.cs
Source:
Byte.cs

Konvertiert die Spannendarstellung einer Zahl in einem angegebenen Stil und kulturabhängigen Format in das entsprechende Byte.

public static byte Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Integer, IFormatProvider? provider = default);
public static byte Parse (ReadOnlySpan<char> s, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Integer, IFormatProvider provider = default);
static member Parse : ReadOnlySpan<char> * System.Globalization.NumberStyles * IFormatProvider -> byte
Public Shared Function Parse (s As ReadOnlySpan(Of Char), Optional style As NumberStyles = System.Globalization.NumberStyles.Integer, Optional provider As IFormatProvider = Nothing) As Byte

Parameter

s
ReadOnlySpan<Char>

Eine Zeichenspanne, die den zu konvertierenden Wert darstellt

style
NumberStyles

Eine bitweise Kombination von Enumerationswerten, die die Stilelemente angeben, die in s vorhanden sein können. Ein häufig angegebener Wert ist Integer.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Informationen zum Format von s bereitstellt. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.

Gibt zurück

Ein Bytewert, der der Zahl in s entspricht.

Implementiert

Gilt für:

Parse(ReadOnlySpan<Byte>, NumberStyles, IFormatProvider)

Source:
Byte.cs
Source:
Byte.cs

Analysiert eine Spanne von UTF-8-Zeichen in einen Wert.

public static byte Parse (ReadOnlySpan<byte> utf8Text, System.Globalization.NumberStyles style = System.Globalization.NumberStyles.Integer, IFormatProvider? provider = default);
static member Parse : ReadOnlySpan<byte> * System.Globalization.NumberStyles * IFormatProvider -> byte
Public Shared Function Parse (utf8Text As ReadOnlySpan(Of Byte), Optional style As NumberStyles = System.Globalization.NumberStyles.Integer, Optional provider As IFormatProvider = Nothing) As Byte

Parameter

utf8Text
ReadOnlySpan<Byte>

Die Spanne der zu analysierenden UTF-8-Zeichen.

style
NumberStyles

Eine bitweise Kombination von Zahlenformatvorlagen, die in utf8Textvorhanden sein können.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu utf8Text bereitstellt.

Gibt zurück

Das Ergebnis der Analyse utf8Textvon .

Implementiert

Gilt für:

Parse(String, IFormatProvider)

Source:
Byte.cs
Source:
Byte.cs
Source:
Byte.cs

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen kulturspezifischen Format in die Byte-Entsprechung.

public:
 static System::Byte Parse(System::String ^ s, IFormatProvider ^ provider);
public:
 static System::Byte Parse(System::String ^ s, IFormatProvider ^ provider) = IParsable<System::Byte>::Parse;
public static byte Parse (string s, IFormatProvider provider);
public static byte Parse (string s, IFormatProvider? provider);
static member Parse : string * IFormatProvider -> byte
Public Shared Function Parse (s As String, provider As IFormatProvider) As Byte

Parameter

s
String

Eine Zeichenfolge, die eine zu konvertierende Zahl enthält. Die Zeichenfolge wird unter Verwendung des Integer-Formats interpretiert.

provider
IFormatProvider

Ein Objekt, das kulturabhängige Analyseinformationen über s bereitstellt. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.

Gibt zurück

Ein Bytewert, der der Zahl in s entspricht.

Implementiert

Ausnahmen

s ist null.

s weist nicht das richtige Format auf.

s stellt eine Zahl dar, die kleiner als Byte.MinValue oder größer als Byte.MaxValue ist.

Beispiele

Im folgenden Beispiel werden Zeichenfolgendarstellungen von Byte Werten mit der Parse -Methode analysiert.

String^ stringToConvert; 
Byte byteValue;

stringToConvert = " 214 ";
try {
   byteValue = Byte::Parse(stringToConvert, CultureInfo::InvariantCulture);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException^) {
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert); }
catch (OverflowException^) {
   Console::WriteLine("'{0}' is greater than {1} or less than {2}.", 
                     stringToConvert, Byte::MaxValue, Byte::MinValue); }

stringToConvert = " + 214 ";
try {
   byteValue = Byte::Parse(stringToConvert, CultureInfo::InvariantCulture);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException^) {
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert); }
catch (OverflowException^) {
   Console::WriteLine("'{0}' is greater than {1} or less than {2}.", 
                     stringToConvert, Byte::MaxValue, Byte::MinValue); }

stringToConvert = " +214 ";
try {
   byteValue = Byte::Parse(stringToConvert, CultureInfo::InvariantCulture);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException^) {
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert); }
catch (OverflowException^) {
   Console::WriteLine("'{0}' is greater than {1} or less than {2}.", 
                     stringToConvert, Byte::MaxValue, Byte::MinValue); }
// The example displays the following output to the console:
//       Converted ' 214 ' to 214.
//       Unable to parse ' + 214 '.
//       Converted ' +214 ' to 214.
string stringToConvert;
byte byteValue;

stringToConvert = " 214 ";
try {
   byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException) {
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert); }
catch (OverflowException) {
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.",
                     stringToConvert, Byte.MaxValue, Byte.MinValue); }

stringToConvert = " + 214 ";
try {
   byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException) {
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert); }
catch (OverflowException) {
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.",
                     stringToConvert, Byte.MaxValue, Byte.MinValue); }

stringToConvert = " +214 ";
try {
   byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException) {
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert); }
catch (OverflowException) {
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.",
                     stringToConvert, Byte.MaxValue, Byte.MinValue); }
// The example displays the following output to the console:
//       Converted ' 214 ' to 214.
//       Unable to parse ' + 214 '.
//       Converted ' +214 ' to 214.
let stringToConvert = " 214 "
try
    let byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture)
    printfn $"Converted '{stringToConvert}' to {byteValue}." 
with
| :? FormatException ->
    printfn $"Unable to parse '{stringToConvert}'."
| :? OverflowException ->
    printfn $"'{stringToConvert}' is greater than {Byte.MaxValue} or less than {Byte.MinValue}." 

let stringToConvert = " + 214 "
try
    let byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture)
    printfn $"Converted '{stringToConvert}' to {byteValue}." 
with
| :? FormatException ->
    printfn $"Unable to parse '{stringToConvert}'."
| :? OverflowException ->
    printfn $"'{stringToConvert}' is greater than {Byte.MaxValue} or less than {Byte.MinValue}." 

let stringToConvert = " +214 "
try
    let byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture)
    printfn $"Converted '{stringToConvert}' to {byteValue}." 
with
| :? FormatException ->
    printfn $"Unable to parse '{stringToConvert}'."
| :? OverflowException ->
    printfn $"'{stringToConvert}' is greater than {Byte.MaxValue} or less than {Byte.MinValue}." 

// The example displays the following output to the console:
//       Converted ' 214 ' to 214.
//       Unable to parse ' + 214 '.
//       Converted ' +214 ' to 214.
Dim stringToConvert As String 
Dim byteValue As Byte

stringToConvert = " 214 "
Try
   byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.", _
                     stringToConvert, Byte.MaxValue, Byte.MinValue)
End Try  

stringToConvert = " + 214 "
Try
   byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.", _
                     stringToConvert, Byte.MaxValue, Byte.MinValue)
End Try  

stringToConvert = " +214 "
Try
   byteValue = Byte.Parse(stringToConvert, CultureInfo.InvariantCulture)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.", _
                     stringToConvert, Byte.MaxValue, Byte.MinValue)
End Try
' The example displays the following output to the console:
'       Converted ' 214 ' to 214.
'       Unable to parse ' + 214 '.
'       Converted ' +214 ' to 214.

Hinweise

Der s Parameter enthält eine Nummer des Formulars:

[ws] [Sign]digits[ws]

Elemente in eckigen Klammern ([ und ]) sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element Beschreibung
ws Optionaler Leerraum.
sign Ein optionales positives Vorzeichen.
Zahlen Eine Sequenz von Ziffern im Bereich von 0 bis 9.

Der s Parameter wird mithilfe des Stils Integer interpretiert. Zusätzlich zu den Dezimalstellen des Bytewerts sind nur führende und nachfolgende Leerzeichen zusammen mit einem führenden Zeichen zulässig. (Wenn das Zeichen vorhanden ist, muss es ein positives Zeichen sein, oder die Methode löst einen ausOverflowException.) Verwenden Sie die -Methode, um die Stilelemente explizit zusammen mit den kulturspezifischen Formatierungsinformationen zu definieren, die Byte.Parse(String, NumberStyles, IFormatProvider) in svorhanden sein können.

Der s Parameter wird mithilfe der Formatierungsinformationen in einem NumberFormatInfo von providerbereitgestellten -Objekt analysiert. Der provider Parameter ist eine IFormatProvider Implementierung, z. B. ein - oder CultureInfo -NumberFormatInfoObjekt. Der provider Parameter stellt kulturspezifische Informationen bereit, die bei der Analyse verwendet werden. Wenn provider gleich null ist, wird die aktuelle Threadkultur verwendet.

Weitere Informationen

Gilt für:

Parse(String, NumberStyles)

Source:
Byte.cs
Source:
Byte.cs
Source:
Byte.cs

Konvertiert die Zeichenfolgendarstellung einer Zahl in einem angegebenen Stil in die Byte-Entsprechung.

public:
 static System::Byte Parse(System::String ^ s, System::Globalization::NumberStyles style);
public static byte Parse (string s, System.Globalization.NumberStyles style);
static member Parse : string * System.Globalization.NumberStyles -> byte
Public Shared Function Parse (s As String, style As NumberStyles) As Byte

Parameter

s
String

Eine Zeichenfolge, die eine zu konvertierende Zahl enthält. Die Zeichenfolge wird unter Verwendung des durch style angegebenen Formats interpretiert.

style
NumberStyles

Eine bitweise Kombination von Enumerationswerten, die die Stilelemente angeben, die in s vorhanden sein können. Ein häufig angegebener Wert ist Integer.

Gibt zurück

Ein Bytewert, der der Zahl in s entspricht.

Ausnahmen

s ist null.

s weist nicht das richtige Format auf.

s stellt eine Zahl dar, die kleiner als Byte.MinValue oder größer als Byte.MaxValue ist.

- oder -

s enthält Dezimalstellen ungleich 0 (null).

style ist kein NumberStyles-Wert.

- oder -

style ist keine Kombination von AllowHexSpecifier- und HexNumber-Werten.

Beispiele

Im folgenden Beispiel werden Zeichenfolgendarstellungen von Byte Werten mit der Byte.Parse(String, NumberStyles) -Methode analysiert. Die aktuelle Kultur für das Beispiel ist en-US.

String^ value;
NumberStyles style;
Byte number;

// Parse value with no styles allowed.
style = NumberStyles::None;
value = " 241 ";
try
{
   number = Byte::Parse(value, style);
   Console::WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException^) {
   Console::WriteLine("Unable to parse '{0}'.", value); }   

// Parse value with trailing sign.
style = NumberStyles::Integer | NumberStyles::AllowTrailingSign;
value = " 163+";
number = Byte::Parse(value, style);
Console::WriteLine("Converted '{0}' to {1}.", value, number);

// Parse value with leading sign.
value = "   +253  ";
number = Byte::Parse(value, style);
Console::WriteLine("Converted '{0}' to {1}.", value, number);
// This example displays the following output to the console:
//       Unable to parse ' 241 '.
//       Converted ' 163+' to 163.
//       Converted '   +253  ' to 253.
string value;
NumberStyles style;
byte number;

// Parse value with no styles allowed.
style = NumberStyles.None;
value = " 241 ";
try
{
   number = Byte.Parse(value, style);
   Console.WriteLine("Converted '{0}' to {1}.", value, number);
}
catch (FormatException) {
   Console.WriteLine("Unable to parse '{0}'.", value); }

// Parse value with trailing sign.
style = NumberStyles.Integer | NumberStyles.AllowTrailingSign;
value = " 163+";
number = Byte.Parse(value, style);
Console.WriteLine("Converted '{0}' to {1}.", value, number);

// Parse value with leading sign.
value = "   +253  ";
number = Byte.Parse(value, style);
Console.WriteLine("Converted '{0}' to {1}.", value, number);
// This example displays the following output to the console:
//       Unable to parse ' 241 '.
//       Converted ' 163+' to 163.
//       Converted '   +253  ' to 253.
// Parse value with no styles allowed.
let style = NumberStyles.None
let value = " 241 "
try
    let number = Byte.Parse(value, style);
    printfn $"Converted '{value}' to {number}."
with :? FormatException ->
    printfn $"Unable to parse '{value}'."

// Parse value with trailing sign.
let style = NumberStyles.Integer ||| NumberStyles.AllowTrailingSign
let value = " 163+"
let number = Byte.Parse(value, style)
printfn $"Converted '{value}' to {number}."

// Parse value with leading sign.
let value = "   +253  "
let number = Byte.Parse(value, style)
printfn $"Converted '{value}' to {number}."

// This example displays the following output to the console:
//       Unable to parse ' 241 '.
//       Converted ' 163+' to 163.
//       Converted '   +253  ' to 253.
Dim value As String
Dim style As NumberStyles
Dim number As Byte

' Parse value with no styles allowed.
style = NumberStyles.None
value = " 241 "
Try
   number = Byte.Parse(value, style)
   Console.WriteLine("Converted '{0}' to {1}.", value, number)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", value)   
End Try
  
' Parse value with trailing sign.
style = NumberStyles.Integer Or NumberStyles.AllowTrailingSign
value = " 163+"
number = Byte.Parse(value, style)
Console.WriteLine("Converted '{0}' to {1}.", value, number)

' Parse value with leading sign.
value = "   +253  "
number = Byte.Parse(value, style)
Console.WriteLine("Converted '{0}' to {1}.", value, number)
' This example displays the following output to the console:
'       Unable to parse ' 241 '.
'       Converted ' 163+' to 163.
'       Converted '   +253  ' to 253.

Hinweise

Der style Parameter definiert die Stilelemente (z. B. Leerzeichen oder positive Vorzeichen), die im s Parameter zulässig sind, damit der Analysevorgang erfolgreich ist. Es muss sich um eine Kombination von Bitflags aus der NumberStyles Enumeration handeln. Abhängig vom Wert von stylekann der s Parameter die folgenden Elemente enthalten:

[ws] [$] [Sign]digits[.fractional_digits][e[sign]digits][ws]

Oder, wenn style enthält AllowHexSpecifier:

[ws]hexdigits[ws]

Elemente in eckigen Klammern ([ und ]) sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element Beschreibung
ws Optionaler Leerraum. Leerzeichen können am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingWhite Flag enthalten ist, oder am Ende von , wenn style das NumberStyles.AllowTrailingWhite Flag enthält.
$ Ein kulturspezifisches Währungssymbol. Ihre Position in der Zeichenfolge wird durch die NumberFormatInfo.CurrencyPositivePattern -Eigenschaft der aktuellen Kultur definiert. Das Währungssymbol der aktuellen Kultur kann in s angezeigt werden, wenn style das NumberStyles.AllowCurrencySymbol Flag enthält.
sign Ein optionales positives Vorzeichen. (Die -Methode löst eine aus OverflowException , wenn in sein negatives Vorzeichen vorhanden ist.) Das Zeichen kann am Anfang von s angezeigt werden, wenn style das NumberStyles.AllowLeadingSign Flag enthält, oder am Ende von s , wenn style das NumberStyles.AllowTrailingSign Flag enthält.
Zahlen Eine Sequenz von Ziffern von 0 bis 9.
. Ein kulturspezifisches Dezimaltrennzeichen. Das Dezimalzeichensymbol der aktuellen Kultur kann in s angezeigt werden, wenn style das NumberStyles.AllowDecimalPoint Flag enthält.
fractional_digits Mindestens ein Vorkommen der Ziffer 0. Bruchstellen können nur in s angezeigt werden, wenn style das NumberStyles.AllowDecimalPoint Flag enthalten ist.
e Das Zeichen e oder E, das angibt, dass der Wert in exponentieller Notation dargestellt wird. Der s Parameter kann eine Zahl in exponentieller Notation darstellen, wenn style das NumberStyles.AllowExponent Flag enthalten ist.
hexdigits Eine Sequenz von Hexadezimalstellen von 0 bis f oder 0 bis F.

Hinweis

Alle endenden NUL-Zeichen (U+0000) in s werden vom Analysevorgang ignoriert, unabhängig vom Wert des style Arguments.

Eine Zeichenfolge nur mit Dezimalstellen (die der NumberStyles.None Formatvorlage entspricht) analysiert immer erfolgreich. Die meisten der verbleibenden NumberStyles Member steuern Elemente, die in dieser Eingabezeichenfolge möglicherweise vorhanden sein, aber nicht erforderlich sind. Die folgende Tabelle gibt an, wie sich einzelne NumberStyles Member auf die Elemente auswirken, die in svorhanden sein können.

Nicht zusammengesetzte NumberStyles-Werte Zulässige Elemente in s zusätzlich zu Ziffern
NumberStyles.None Nur Dezimalstellen.
NumberStyles.AllowDecimalPoint Die Elemente . und fractional_digits . Allerdings darf fractional_digits nur aus einer oder mehreren 0 Ziffern bestehen, oder es wird eine OverflowException ausgelöst.
NumberStyles.AllowExponent Der s Parameter kann auch exponentielle Notation verwenden.
NumberStyles.AllowLeadingWhite Das ws-Element am Anfang von s.
NumberStyles.AllowTrailingWhite Das ws-Element am Ende von s.
NumberStyles.AllowLeadingSign Vor Ziffern kann ein positives Vorzeichen angezeigt werden.
NumberStyles.AllowTrailingSign Ein positives Vorzeichen kann nach Ziffern angezeigt werden.
NumberStyles.AllowParentheses Obwohl dieses Flag unterstützt wird, führt die Verwendung von Klammern in zu s einem OverflowException.
NumberStyles.AllowThousands Obwohl das Gruppentrennzeichensymbol in sangezeigt werden kann, kann ihm nur eine oder mehrere 0 Ziffern vorangestellt werden.
NumberStyles.AllowCurrencySymbol Das $-Element.

Wenn das NumberStyles.AllowHexSpecifier Flag verwendet wird, s muss ein Hexadezimalwert ohne Präfix sein. Beispielsweise analysiert "F3" erfolgreich, "0xF3" jedoch nicht. Die einzigen anderen Flags, die damit kombiniert werden können, sind NumberStyles.AllowLeadingWhite und NumberStyles.AllowTrailingWhite. (Die NumberStyles Enumeration enthält eine zusammengesetzte Zahlenformatvorlage, NumberStyles.HexNumber, die beide Leerzeichenflags enthält.)

Der s Parameter wird mithilfe der Formatierungsinformationen in einem NumberFormatInfo Objekt analysiert, das für die aktuelle Systemkultur initialisiert wird. Um die Formatierungsinformationen einer anderen Kultur zu verwenden, rufen Sie die Byte.Parse(String, NumberStyles, IFormatProvider) Überladung auf.

Weitere Informationen

Gilt für:

Parse(ReadOnlySpan<Char>, IFormatProvider)

Source:
Byte.cs
Source:
Byte.cs
Source:
Byte.cs

Analysiert eine Spanne von Zeichen in einen Wert.

public:
 static System::Byte Parse(ReadOnlySpan<char> s, IFormatProvider ^ provider) = ISpanParsable<System::Byte>::Parse;
public static byte Parse (ReadOnlySpan<char> s, IFormatProvider? provider);
static member Parse : ReadOnlySpan<char> * IFormatProvider -> byte
Public Shared Function Parse (s As ReadOnlySpan(Of Char), provider As IFormatProvider) As Byte

Parameter

s
ReadOnlySpan<Char>

Die Spanne der zu analysierenden Zeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu s bereitstellt.

Gibt zurück

Das Ergebnis der Analyse svon .

Implementiert

Gilt für:

Parse(ReadOnlySpan<Byte>, IFormatProvider)

Source:
Byte.cs
Source:
Byte.cs

Analysiert eine Spanne von UTF-8-Zeichen in einen Wert.

public:
 static System::Byte Parse(ReadOnlySpan<System::Byte> utf8Text, IFormatProvider ^ provider) = IUtf8SpanParsable<System::Byte>::Parse;
public static byte Parse (ReadOnlySpan<byte> utf8Text, IFormatProvider? provider);
static member Parse : ReadOnlySpan<byte> * IFormatProvider -> byte
Public Shared Function Parse (utf8Text As ReadOnlySpan(Of Byte), provider As IFormatProvider) As Byte

Parameter

utf8Text
ReadOnlySpan<Byte>

Die Spanne der zu analysierenden UTF-8-Zeichen.

provider
IFormatProvider

Ein Objekt, das kulturspezifische Formatierungsinformationen zu utf8Text bereitstellt.

Gibt zurück

Das Ergebnis der Analyse utf8Textvon .

Implementiert

Gilt für:

Parse(String)

Source:
Byte.cs
Source:
Byte.cs
Source:
Byte.cs

Wandelt die angegebene Zeichenfolgendarstellung einer Zahl in ihre Byte-Entsprechung um.

public:
 static System::Byte Parse(System::String ^ s);
public static byte Parse (string s);
static member Parse : string -> byte
Public Shared Function Parse (s As String) As Byte

Parameter

s
String

Eine Zeichenfolge, die eine zu konvertierende Zahl enthält. Die Zeichenfolge wird unter Verwendung des Integer-Formats interpretiert.

Gibt zurück

Ein Bytewert, der der Zahl in s entspricht.

Ausnahmen

s ist null.

s weist nicht das richtige Format auf.

s stellt eine Zahl dar, die kleiner als Byte.MinValue oder größer als Byte.MaxValue ist.

Beispiele

Im folgenden Beispiel wird veranschaulicht, wie ein Zeichenfolgenwert mithilfe der Byte.Parse(String) -Methode in einen Bytewert konvertiert wird. Der resultierende Bytewert wird dann in der Konsole angezeigt.

String^ stringToConvert = " 162";
Byte byteValue;
try
{
   byteValue = Byte::Parse(stringToConvert);
   Console::WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}   
catch (FormatException^)
{
   Console::WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException^)
{
   Console::WriteLine("'{0}' is greater than {1} or less than {2}.", 
                     stringToConvert, Byte::MaxValue, Byte::MinValue);
}  
// The example displays the following output to the console:
//       Converted ' 162' to 162.
string stringToConvert = " 162";
byte byteValue;
try
{
   byteValue = Byte.Parse(stringToConvert);
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue);
}
catch (FormatException)
{
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert);
}
catch (OverflowException)
{
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.",
                     stringToConvert, Byte.MaxValue, Byte.MinValue);
}
// The example displays the following output to the console:
//       Converted ' 162' to 162.
let stringToConvert = " 162"
try
    let byteValue = Byte.Parse stringToConvert
    printfn $"Converted '{stringToConvert}' to {byteValue}."
with
| :? FormatException ->
    printfn $"Unable to parse '{stringToConvert}'."
| :? OverflowException ->
    printfn $"'{stringToConvert}' is greater than {Byte.MaxValue} or less than {Byte.MinValue}."

// The example displays the following output to the console:
//       Converted ' 162' to 162.
Dim stringToConvert As String = " 162"
Dim byteValue As Byte
Try
   byteValue = Byte.Parse(stringToConvert)
   Console.WriteLine("Converted '{0}' to {1}.", stringToConvert, byteValue)
Catch e As FormatException
   Console.WriteLine("Unable to parse '{0}'.", stringToConvert)
Catch e As OverflowException
   Console.WriteLine("'{0}' is greater than {1} or less than {2}.", _
                     stringToConvert, Byte.MaxValue, Byte.MinValue)
End Try  
' The example displays the following output to the console:
'       Converted ' 162' to 162.

Hinweise

Der s Parameter enthält eine Nummer des Formulars:

[ws] [Sign]digits[ws]

Elemente in eckigen Klammern ([ und ]) sind optional. In der folgenden Tabelle wird jedes Element beschrieben.

Element Beschreibung
ws Optionaler Leerraum.
sign Ein optionales positives oder negatives Zeichen.
Zahlen Eine Sequenz von Ziffern im Bereich von 0 bis 9.

Der s Parameter wird mithilfe des Stils NumberStyles.Integer interpretiert. Zusätzlich zu den Dezimalstellen des Bytewerts sind nur führende und nachfolgende Leerzeichen zusammen mit einem führenden Zeichen zulässig. (Wenn das Zeichen vorhanden ist, muss es ein positives Zeichen sein, oder die Methode löst einen aus OverflowException.) Um explizit die Stilelemente zu definieren, die in svorhanden sein können, verwenden Sie entweder die Byte.Parse(String, NumberStyles) -Methode oder die Byte.Parse(String, NumberStyles, IFormatProvider) -Methode.

Der s Parameter wird mithilfe der Formatierungsinformationen in einem NumberFormatInfo Objekt analysiert, das für die aktuelle Systemkultur initialisiert wird. Weitere Informationen finden Sie unter CurrentInfo. Verwenden Byte.Parse(String, NumberStyles, IFormatProvider) Sie die -Methode, um eine Zeichenfolge mithilfe der Formatierungsinformationen einer anderen Kultur zu analysieren.

Weitere Informationen

Gilt für: