Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In dit voorbeeld ziet u hoe u de BitConverter-klasse gebruikt om een matrix van bytes te converteren naar een int- en terug naar een matrix van bytes. Mogelijk moet u converteren van bytes naar een ingebouwd gegevenstype nadat u bijvoorbeeld bytes uit het netwerk hebt gelezen. Naast de methode ToInt32(Byte[], Int32) in het voorbeeld bevat de volgende tabel methoden in de klasse BitConverter waarmee bytes (van een matrix van bytes) worden geconverteerd naar andere ingebouwde typen.
Teruggegeven type | Methode |
---|---|
bool |
ToBoolean(Byte[], Int32) |
char |
ToChar(Byte[], Int32) |
double |
ToDouble(Byte[], Int32) |
short |
ToInt16(Byte[], Int32) |
int |
ToInt32(Byte[], Int32) |
long |
ToInt64(Byte[], Int32) |
float |
ToSingle(Byte[], Int32) |
ushort |
ToUInt16(Byte[], Int32) |
uint |
ToUInt32(Byte[], Int32) |
ulong |
ToUInt64(Byte[], Int32) |
Voorbeelden
In dit voorbeeld wordt een matrix van bytes geïnitialiseerd, wordt de matrix omgekeerd als de computerarchitectuur little-endian is (dat wil gezegd, de minst significante byte wordt eerst opgeslagen) en wordt vervolgens de ToInt32(Byte[], Int32) methode aangeroepen om vier bytes in de matrix te converteren naar een int
. Het tweede argument voor ToInt32(Byte[], Int32) de beginindex van de matrix van bytes specificeert.
Notitie
De uitvoer kan verschillen, afhankelijk van de endianiteit van de architectuur van uw computer.
byte[] bytes = [0, 0, 0, 25];
// If the system architecture is little-endian (that is, little end first),
// reverse the byte array.
if (BitConverter.IsLittleEndian)
Array.Reverse(bytes);
int i = BitConverter.ToInt32(bytes, 0);
Console.WriteLine($"int: {i}");
// Output: int: 25
In dit voorbeeld wordt de GetBytes(Int32) methode van de BitConverter-klasse aangeroepen om een int
te converteren naar een matrix van bytes.
Notitie
De uitvoer kan verschillen, afhankelijk van de endianiteit van de architectuur van uw computer.
byte[] bytes = BitConverter.GetBytes(201805978);
Console.WriteLine("byte array: " + BitConverter.ToString(bytes));
// Output: byte array: 9A-50-07-0C