Posez votre question Signaler

Java : String -> Hexa

Sabi - Dernière réponse le 24 juin 2011 à 00:10
Bonjour,

Je suis à la recherche d'une méthode permettant de transformer une chaine de caractères, contenant la valeur d'une couleur (ex : #FFFF00) , en une valeur hexadécimale.

Merci d'avance.
Lire la suite 

Java : String -> Hexa »

Suggestions
8 réponses
Réponse
+3
moins plus
Voici un code que j'ai fait qui transforme un String en un autre String image hexadécimal du précédent. Il me semble plus juste et propre que le code que j'ai référencé précédemment.

    public String stringToHexa(String texte) { 
        int c;//int's equivalent to char 
        char s=' ';//separator 
        //To safe memory - limite gc requests 
        StringBuffer buff = new StringBuffer(texte.length()); 
        for (int i = 0; i < texte.length(); i++) { 
            c=texte.charAt(i); 
            buff.append(Integer.toHexString(c)).append(s); 
        } 
        return buff.toString(); 
    }


Nota : Il est préférable d'utiliser un buffer lorsque l'on change régulièrement la taille d'une suite de caractères, autrement un nouveau String serait généré à chaque (String)+=(String)
Ajouter un commentaire
Réponse
+2
moins plus
Bonjour,

La fonction Integer.parseInt(String, int) permet de parser un nombre écrit dans la base voulue (le second argument). Pour parser de l'hexa, Integer.parserInt("0F",16).

... donc en combinant des substrings et des parseInt cela devrait suffire.

Salutations
Ozgur - 24 juin 2011 à 00:10
Java Programming Code Examples
http://www.programmingpages.net/JAVA/java-code-examples.html
Ajouter un commentaire
Réponse
+0
moins plus
Ben il faut que tu recupére les caractère un par un et que tu le transforme en hexa. Pour l'exa : C'est po tres complique :

Il doit y avoir des fonction qui le font ts seul me je connais po aseez JAVA pour ça sinon la methode est :

Xd (decimal)
Xh (Hexa)

tu fais : R = Xd / 16 => Tu prends la partie entière qui te donne le poid fort du charactère (Pfort)

Avec lapartie decimale (reste de la division (r) tu fe Pfaible = 16 / r

Ex : 186(d) => 186 / 16 = 11, 625

D ou 11 C'est B en Hexa (0 1 2 3 4 5 6 7 8 9 A B C D E F)
et 16/0.625 = 10 et 10 C'est A en Hexa

D'ou 186d => BAh


Ce qui te fait un truc du genre

str2 : String
DecToHex : fonction qui fait la conversion d'un byte Decimal en Hexa

String str2 = "";

for(int i=0; i<str.length(); i++)
{
str2.appened((char)DecToHex((byte)str.charAt(i)));
}

G po verifier, mais c 'est un truc comme ça. Disle moi si Ca marche po Je te filerais l'algo.

P.S. Y asurement des focntion spéciale pour le faire. Donc si quelqu'un de calé à une idée !!!



genre
Quand ça veut Po ça veut po !!!
- Et ben y a plus qu'à attendre -
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour, je cherche a convertir un string vers sont equivalent ASCII le tout dans une chaine de caractère. Je m'explique :

Je recupere une chaine du type "Hello world" et j'aimerais recupéré sont equivalent ASCII dans une autre chaine de caractère, c'est a dire "48656C6C6F20776F726C64" dans notre exemple.

Merci d'avance ;)
Kromarius- 26 avril 2010 à 01:53
Nota : Java encode théoriquement le texte en Unicode, à priori UTF-16 : à vérifier (pas tout à fait en ASCII).
Ajouter un commentaire
Réponse
+0
moins plus
Voici un lien sur un code qui le fait :
http://www.java.happycodings.com/Core_Java/code11.html
Ajouter un commentaire
Ce document intitulé « Java : String -> Hexa » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?