Tout d'abord je n'ai pas d'espion (j'espère !!!)
Et peu importe que le nombre soit en décimal, hexa, binaire ou autre, ça reste un nombre et ce n'est pas une chaine. Mais un nombre peut aussi être associé à un caractère (par la table ASCII par exemple)
Et dans ton cas, il faut passer en caractères car ta chaine est une chaine de caractères.
Bonjour,
Dans mon cas, j'ai une suite de bytes qui mis bout à bout représentent une série de valeurs (d'abord des sections, puis des coordonnées x/y de positions de points) en LittleIndian.
Du coup je veux récupérer la valeur des bytes en tant que string pour pouvoir les manipuler et les intervertir, puis recalculer cette valeur Hexa pour en déduire sa valeur décimale.
Concrètement, j'ai un array de bytes B0, B1, B2, B3, ... B20001.
Ensuite je les traduis en string S0, S1, S2, S3, ... S20001.
Ensuite je les intervertis pour remettre mon Little Indian dans le bon ordre et je les stocke dans un string S1&S0, S3&S2, S5&S4, ..., S20001&S20000.
Enfin je repasse ces valeurs en Hexa 0x(S1&S0), 0x(S3&S2), ...
Ensuite je les traduis en décimal pour retrouver mes dimension D0, D1, D2, ... , D10000
Ici, si je prends mes deux premiers bytes, j'ai 5E02 -> 025E -> 606
En plus de ça, il y a une autre subtilité : j'ai plus loin dans mon télégramme des valeurs qui ne sont pas sur 2 bytes mais sur 1 seul, et certains couples de valeurs qui ne sont pas à traiter en LittleIndian mais bien 1 par 1, avec l'élément suivant qui conditionne le précédent (par ex, si byte 1001=0, alors byte 1000= HEX2DEC(Byte 1000)-255
Bonne journée,