BitConverter Klasse
TOC
Inhaltsverzeichnis reduzieren
Inhaltsverzeichnis erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

BitConverter-Klasse

 

Konvertiert Basisdatentypen in ein Bytearray und ein Bytearray in Basisdatentypen.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

System.Object
  System.BitConverter

[<AbstractClass>]
[<Sealed>]
type BitConverter = class end

NameBeschreibung
System_CAPS_pubmethodSystem_CAPS_staticDoubleToInt64Bits(Double)

Konvertiert die angegebene Gleitkommazahl mit doppelter Genauigkeit in eine 64-Bit-Ganzzahl mit Vorzeichen.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Boolean)

Gibt den angegebenen booleschen Wert als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Char)

Gibt den Wert des angegebenen Unicode-Zeichens als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Double)

Gibt den angegebenen Gleitkommawert mit doppelter Genauigkeit als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Int16)

Gibt den Wert der angegebenen 16-Bit-Ganzzahl mit Vorzeichen als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Int32)

Gibt den Wert der angegebenen 32-Bit-Ganzzahl mit Vorzeichen als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Int64)

Gibt den Wert der angegebenen 64-Bit-Ganzzahl mit Vorzeichen als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(Single)

Gibt den angegebenen Gleitkommawert mit einfacher Genauigkeit als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(UInt16)

Gibt den Wert der angegebenen vorzeichenlosen 16-Bit-Ganzzahl als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(UInt32)

Gibt den Wert der angegebenen vorzeichenlosen 32-Bit-Ganzzahl als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticGetBytes(UInt64)

Gibt den Wert der angegebenen vorzeichenlosen 64-Bit-Ganzzahl als Bytearray zurück.

System_CAPS_pubmethodSystem_CAPS_staticInt64BitsToDouble(Int64)

Konvertiert die angegebene 64-Bit-Ganzzahl mit Vorzeichen in eine Gleitkommazahl mit doppelter Genauigkeit.

System_CAPS_pubmethodSystem_CAPS_staticToBoolean(Byte[], Int32)

Gibt einen booleschen Wert zurück, der aus einem Byte an der angegebenen Position eines Bytearrays konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToChar(Byte[], Int32)

Gibt ein Unicode-Zeichen zurück, das aus zwei Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToDouble(Byte[], Int32)

Gibt eine Gleitkommazahl mit doppelter Genauigkeit zurück, die aus acht Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToInt16(Byte[], Int32)

Gibt eine 16-Bit-Ganzzahl mit Vorzeichen zurück, die aus zwei Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToInt32(Byte[], Int32)

Gibt eine 32-Bit-Ganzzahl mit Vorzeichen zurück, die aus vier Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToInt64(Byte[], Int32)

Gibt eine 64-Bit-Ganzzahl mit Vorzeichen zurück, die aus acht Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToSingle(Byte[], Int32)

Gibt eine Gleitkommazahl mit einfacher Genauigkeit zurück, die aus vier Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToString(Byte[])

Konvertiert den numerischen Wert jedes Elements im angegebenen Bytearray in die entsprechende hexadezimale Zeichenfolgendarstellung.

System_CAPS_pubmethodSystem_CAPS_staticToString(Byte[], Int32)

Konvertiert den numerischen Wert jedes Elements in einem Teil des angegebenen Bytearrays in die entsprechende hexadezimale Zeichenfolgendarstellung.

System_CAPS_pubmethodSystem_CAPS_staticToString(Byte[], Int32, Int32)

Konvertiert den numerischen Wert jedes Elements in einem Teil des angegebenen Bytearrays in die entsprechende hexadezimale Zeichenfolgendarstellung.

System_CAPS_pubmethodSystem_CAPS_staticToUInt16(Byte[], Int32)

Gibt eine vorzeichenlose 16-Bit-Ganzzahl zurück, die aus zwei Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToUInt32(Byte[], Int32)

Gibt eine vorzeichenlose 32-Bit-Ganzzahl zurück, die aus vier Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

System_CAPS_pubmethodSystem_CAPS_staticToUInt64(Byte[], Int32)

Gibt eine vorzeichenlose 64-Bit-Ganzzahl zurück, die aus acht Bytes an der angegebenen Position in einem Bytearray konvertiert wurde.

NameBeschreibung
System_CAPS_pubfieldSystem_CAPS_staticIsLittleEndian

Gibt die Bytereihenfolge (Endian-Reihenfolge) an, in der Daten in dieser Computerarchitektur gespeichert werden.

Die BitConverter-Klasse hilft, Werttypen in ihrer wesentlichen Form zu bearbeiten, als Reihe von Bytes.Ein Byte ist als vorzeichenlose 8-Bit-Ganzzahl definiert.Die BitConverter-Klasse schließt statische Methoden ein, um jeden der primitiven Typen in und aus einem Bytearray zu konvertieren, wie die folgende Tabelle veranschaulicht.

Type

Eingehende Bytekonvertierung

Ausgehende Bytekonvertierung

Boolean

GetBytes(Boolean)

ToBoolean

Char

GetBytes(Char)

ToChar

Double

GetBytes(Double)

- oder -

DoubleToInt64Bits(Double)

ToDouble

- oder -

Int64BitsToDouble

Int16

GetBytes(Int16)

ToInt16

Int32

GetBytes(Int32)

ToInt32

Int64

GetBytes(Int64)

ToInt64

Single

GetBytes(Single)

ToSingle

UInt16

GetBytes(UInt16)

ToUInt16

UInt32

GetBytes(UInt32)

ToUInt32

UInt64

GetBytes(UInt64)

ToUInt64

Wenn Sie einen Roundtrip der Daten mithilfe von BitConverter-Methoden ausführen, stellen Sie sicher, dass die GetBytes-Überladung und die ToType-Methode den gleichen Typ angeben.Wie im folgenden Beispiel veranschaulicht wird, kann ein Array wiederherzustellen, das durch Aufrufen der ToUInt32-Methode eine ganze Zahl mit Vorzeichen darstellt, zu einem Wert führen, der sich vom Original unterscheidet.Weitere Informationen finden Sie im Eintrag Working with Signed Non-Decimal and Bitwise Values im Blog des BCL-Teams.

Derzeit ist kein Code Beispiel verfügbar, oder die Sprache wird nicht unterstützt.

Die Reihenfolge von Bytes im von den GetBytes-Methodenüberladungen zurückgegebenen Array (sowie die Reihenfolge von Bits in der von der DoubleToInt64Bits-Methode zurückgegebenen ganzen Zahl und die Reihenfolge von Hexadezimalzeichenfolgen, die von der ToString(Byte[])-Methode zurückgegeben wurden) hängt davon ab, ob die Computerarchitektur Little-Endian oder Big-Endian ist.Ebenso hängt die Reihenfolge der Bytes im Array sowie die Rückgabe der ToIntegerValue-Methode und der ToChar-Methode davon ab, ob die Computerarchitektur Little-Endian oder Big-Endian ist.Die Endian-Reihenfolge einer Architektur wird von der IsLittleEndian-Eigenschaft angegeben, die true für Little-Endian-Systeme und false für Big-Endian-Systeme zurückgibt.In Little-Endian-Systemen gehen niederwertige Bytes höherwertigen Bytes voraus.In Big-Endian-Systemen gehen höherwertige Bytes niederwertigen Bytes voraus.In der folgenden Tabelle wird der Unterschied in den Bytearrays veranschaulicht, die sich aus dem Übergeben der ganzen Zahl 1.234.567.890 (0x499602D2) an die GetBytes(Int32)-Methode ergibt.Die Bytes werden in der Reihenfolge vom Byte an Index 0 zum Byte an Index 3 aufgeführt.

Little-Endian

D2-02-96-49

Big-Endian

49-96-02-D2

Da der Rückgabewert einiger Methoden von Systemarchitektur abhängt, seien Sie vorsichtig, wenn Sie Bytedaten über Computergrenzen senden:

  • Wenn alle Systeme, die Daten senden und empfangen, garantiert die gleiche Endian-Reihenfolge haben, braucht nichts mit den Daten gemacht zu werden.

  • Wenn Systeme, die Daten senden und empfangen, unterschiedliche Endian-Reihenfolgen haben können, senden Sie Daten immer in einer bestimmten Reihenfolge.Dies bedeutet, dass die Reihenfolge von Bytes im Array möglicherweise entweder vor dem Senden oder nach dem Empfangen umgekehrt werden muss.Eine allgemeine Konvention ist, Daten in Netzwerk-Bytereihenfolge (Big-Endian-Reihenfolge) zu senden.Im folgenden Beispiel wird eine Implementierung zum Senden eines ganzzahligen Werts in Netzwerk-Bytereihenfolge bereitgestellt.

    Derzeit ist kein Code Beispiel verfügbar, oder die Sprache wird nicht unterstützt.
  • Wenn Systeme, die Daten senden und empfangen, unterschiedliche Endian-Reihenfolgen aufweisen können und die zu sendenden Daten aus ganzen Zahlen mit Vorzeichen bestehen, rufen Sie die IPAddress.HostToNetworkOrder-Methode auf, um die Daten in Netzwerk-Bytereihenfolge zu konvertieren, und die IPAddress.NetworkToHostOrder-Methode, um sie in die vom Empfänger geforderte Reihenfolge zu konvertieren.

Im folgenden Codebeispiel wird die Verwendung mehrerer Methoden der BitConverter-Klasse veranschaulicht.

Derzeit ist kein Code Beispiel verfügbar, oder die Sprache wird nicht unterstützt.

Universal Windows Platform
Verfügbar seit 4.5
.NET Framework
Verfügbar seit 1.1
Portable Class Library
Unterstützt in: portable .NET platforms
Silverlight
Verfügbar seit 2.0
Windows Phone Silverlight
Verfügbar seit 7.0
Windows Phone
Verfügbar seit 8.1

Öffentliche statische (in Visual Basic freigegebene) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Zurück zum Anfang
Anzeigen:
© 2016 Microsoft