salut !
j'viens demander un petit coup d'pouce a propos de convertion de bytes.
Je m'explique , par exemple je met ceci :
et je voudrais l'obtenir en bytes car j'ai une fonction d'envoie qui gère uniquement en bytes , donc comme ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 long test = 010203040506070809
donc le passez en big endian ect. Mais c'est pas le problème , j'ai déjà mon code de convertion de uint en LE :
Code : Sélectionner tout - Visualiser dans une fenêtre à part 0x01, 0x02, 0x03 (ect vous m'avez compris)
Mais le problème c'est que mon long ou mon uint peut avoir une longueur aléatoire. Donc je me suis dit qu'il faudrait mettre une condition et c'est pour celà que je demande de l'aide , mettre une condition pour que ça calcul la longueur automatiquement et que ça retourne (un autre exemple) 010203 en 0x01 , 0x02 , 0x03.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 byte[] To4BytesLE(uint data) { byte[] b = new byte[4]; b[0] = (byte)data; b[1] = (byte)(((uint)data >> 8) & 0xFF); b[2] = (byte)(((uint)data >> 16) & 0xFF); b[3] = (byte)(((uint)data >> 24) & 0xFF); return b; }
ça a l'air confu mais ça m'aiderais beaucoup ,
Merci !
Partager