Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2261 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  Obtenir le code ASCII d'un caractère et le convertir en Hexa

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Obtenir le code ASCII d'un caractère et le convertir en Hexa

n°277840
El_gringo
Posté le 31-12-2002 à 15:24:32  profilanswer
 

J'imagine que ça se fait en 2 étapes, et justement, je bloque sur les 2.
Un pitite aide s'il vous plé ? Allez, c'noël...:D


Message édité par El_gringo le 31-12-2002 à 15:27:47
mood
Publicité
Posté le 31-12-2002 à 15:24:32  profilanswer
 

n°277858
phenixl
Posté le 31-12-2002 à 16:33:18  profilanswer
 

El_Gringo a écrit :

J'imagine que ça se fait en 2 étapes, et justement, je bloque sur les 2.
Un pitite aide s'il vous plé ? Allez, c'noël...:D


 
Tiens c'est exactement le TP que j'ai donne a mes etudiants il y a 2 mois (faire un editeur hexadecimal en java) :lol:
 
La méthode simple :
 
Si tu lis un char, le cast en int (pour avoir l'ASCII) puis utilises Integer.toHexString(value).
 
Dans l'autre sens pour transformer un hexstring en int : Integer.parseInt(value, 16) ou value est le String en question. Ensuite tu cast en char pour avoir le caractere.
 
La méthode geek :
 
Au lieu d'utiliser Integer.toHex... euh... en fait ca me broute de t'expliquer la :lol: voici le code, amuses toi bien !
 

Code :
  1. /**
  2.      * @see jexdit.util.HexConverter#byteToHexString(int)
  3.      */
  4.     public String byteToHexString(int value) {
  5.      // we keep hi bits of the int reseting the low bits to 0 and bitshifting to the right  
  6.      int hi = (value & 0xf0) >> 4;
  7.      // we keep low bits of the int reseting the hi bits to 0  
  8.      int low = (value & 0x0f);
  9.         return "" + hexChars.charAt(hi) + hexChars.charAt(low);
  10.     }
  11.     /**
  12.      * @see jexdit.util.HexConverter#hexStringToByte(java.lang.String)
  13.      */
  14.     public byte hexStringToByte(String value) {
  15.         return (byte)Integer.parseInt(value, 16);
  16.     }


 
Note : les noms de methodes ne sont pas tres bien choisis... desole...


Message édité par phenixl le 31-12-2002 à 17:13:28
n°277884
phenixl
Posté le 31-12-2002 à 17:10:14  profilanswer
 

Ah oui...
 
Pour utiliser ceci tu dois :
 
1. avoir un char...
2. convertir ton char en ASCII (cast to int)
3. avoir la variable hexChars
 

Code :
  1. private String hexChars = "0123456789abcdef";


 
4. appeler byteToHexString().
 
Donc :
 

Code :
  1. char c = 'A';
  2. String hexString = byteToHexString((int)c);


n°277886
El_gringo
Posté le 31-12-2002 à 17:14:39  profilanswer
 

ha... cool, merci.
Et... l'intéret de la méthode geek ? compliquer les choses gratuitement (comme les geek adorent) ?

n°277887
phenixl
Posté le 31-12-2002 à 17:19:01  profilanswer
 

El_Gringo a écrit :

ha... cool, merci.
Et... l'intéret de la méthode geek ? compliquer les choses gratuitement (comme les geek adorent) ?


 
Si tu n'as que des caracteres a convertir : aucune utilite. ^^
 
Le but est juste de voir comment ca marche.


Message édité par phenixl le 31-12-2002 à 17:19:33

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  Obtenir le code ASCII d'un caractère et le convertir en Hexa

 

Sujets relatifs
[VB] P-Code vs Code Natif(lire dans un fichier ascii) pourquoi mon programme ne marche pas ?
Code source du PINGdéclaration variable, chaine de caractère
Convertir un fichier au format binhexMettre des espaces dans une chaine de caractère
Concaténer une chaine de caractèrecode qui foire mais je trouve pas l'erreur
ASP : Passer une chaine de caractere en MAJUSCULE ?[Java] Convertir un String en un Object Color [Résolu]
Plus de sujets relatifs à : Obtenir le code ASCII d'un caractère et le convertir en Hexa


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR