Je triyng convertir tableau d'octets en une valeur int mais je reçois une exception:tableau d'octets int C#
« tableau de destination n'est pas assez longtemps pour copier tous les éléments de la collection . Vérifiez l'index et la longueur du tableau. "
l'exception est en ligne:
int length = BitConverter.ToInt32(bytes_length, 0);
octet _length contient la valeur (0x00,0x09);
voici mon code:
byte[] bytes_length = new byte[Value_of_length];
//copy the byte byte array to the correct length.
Array.Copy(data, Place_of_length, bytes_length, 0,bytes_length.Length
int length = BitConverter.ToInt32(bytes_length, 0);
Cet exemple de code ne semble pas être complète. De manière critique, nous ne pouvons pas voir d'où vient la valeur de la longueur de la longueur. – Beska
Comme vous pouvez le constater, ToInt32() nécessite un tableau d'au moins 4 octets. Vous n'avez que 2, vous pouvez au mieux appeler ToInt16(). –
Int32 est appelé ainsi parce qu'il a 32 bits (4 octets de long) – Steve