Bonjour
j'essaie de convertir un tableau caractères en hexa (les valeurs viennent d'un fichier en EBCDIC).
Quand je fais une conversion avec sprintf ou std::hex, toutes valeures au dessus de 80 (en hexa) ne sont pas bonnes :
exemple, au lieux d'avoir D3, j'ai FFFFFF45
un bout de code :Est ce qq a une idée du problème?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 string strToHexStr(char *str, int lenght) { char *cpold = str; string strRet = ""; int num; char tmp[2]; for (int i = 0; i < lenght; i++) { sprintf(tmp, "%02X", (char) (*cpold++)); strRet.append(tmp); } return strRet; }
Merci d'avance
Partager