Re Salut :p

Voila j'ai reussi a decoder mon String (qui est une representation hexa) et je voudrai le convertir en Texte. Jusque la tout va bien le probleme est que j'ai des caracteres qui ont des valeurs superieure à 128 et du coup à la conversion en ASCII ca me fait n'importe quoi.

Par exemple, j'ai le code 138 ( = 0x8a) et qui normalement correspond en ASCII 'è' et mon programme m'affiche '?' apres analyse du probleme j'ai trouve que mon programme encodait sur 7 bits soit jusqu'a 128 or je possede des valeurs qui vont jusqu'a 256

Donc ma question est la suivante comment faire pour etendre mon code ASCII et pouvoir encoder sur 8bits au lieu de 7??

Voila mon code (on sait jamais :p )

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
 
 
public char[] StringToBytes(String string) 
    {       
        char [] tab_encode = new char[string.length()/2];
        int[] tab_encode_tmp = new int[string.length()/2];
        int cpt=0;        
        for (int i = 0; i < tab_encode.length; i++) 
        {
            tab_encode_tmp[i] = Integer.parseInt(string.substring(cpt,cpt+2),16);
            tab_encode[i]=(char)tab_encode_tmp[i];
            cpt+=2;
        }  
        return tab_encode;
J'ai Vraiment besoin de votre aide

Merci de vos reponses