Share 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 BitConverter klasse waarmee bytes (van een matrix van bytes) worden geconverteerd naar andere ingebouwde typen.

Type geretourneerd Wijze
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 vervolgens de methode ToInt32(Byte[], Int32) aanroept om vier bytes in de matrix te converteren naar een int. Het tweede argument voor ToInt32(Byte[], Int32) geeft de beginindex van de matrix van bytes aan.

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: {0}", 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