Delen via


Een bytematrix converteren naar een int (C#-programmeerhandleiding)

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

Zie ook