Obtenir Code ASCII
Résolu/Fermé
m3allem58
Messages postés
58
Date d'inscription
mardi 10 mars 2009
Statut
Membre
Dernière intervention
7 janvier 2014
-
Modifié par m3allem58 le 9/10/2013 à 17:34
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 9 oct. 2013 à 19:43
KX Messages postés 16753 Date d'inscription samedi 31 mai 2008 Statut Modérateur Dernière intervention 25 novembre 2024 - 9 oct. 2013 à 19:43
A voir également:
- Obtenir Code ASCII
- Le code ascii - Guide
- Code puk bloqué - Guide
- Code telephone oublié - Guide
- Code activation windows 10 - Guide
- Code gta 4 ps4 - Guide
3 réponses
Utilisateur anonyme
9 oct. 2013 à 17:32
9 oct. 2013 à 17:32
Bonjour
l'ASCII est un code sur 7 bits, il ne comporte donc des codes que de 0 à 127 : pas de 136 ni de 710.
En ASCII (et en unicode) le code de l'accent circonflexe est 94 (5E hexadécimal).
136 est le code de l'accent circonflexe en windows-1252
710 (2C6 hexadécimal) est le code Unicode de l'accent circonflexe en tant que modificateur de lettre.
Je ne connais pas Java, mais il y a peut-être un moyen de le forcer à travailler en windows-1252. Peut-être.
l'ASCII est un code sur 7 bits, il ne comporte donc des codes que de 0 à 127 : pas de 136 ni de 710.
En ASCII (et en unicode) le code de l'accent circonflexe est 94 (5E hexadécimal).
136 est le code de l'accent circonflexe en windows-1252
710 (2C6 hexadécimal) est le code Unicode de l'accent circonflexe en tant que modificateur de lettre.
Je ne connais pas Java, mais il y a peut-être un moyen de le forcer à travailler en windows-1252. Peut-être.
m3allem58
Messages postés
58
Date d'inscription
mardi 10 mars 2009
Statut
Membre
Dernière intervention
7 janvier 2014
Modifié par m3allem58 le 9/10/2013 à 19:08
Modifié par m3allem58 le 9/10/2013 à 19:08
merci pour la réponse.
j'ai forcé java JVM avec System.setProperty( "file.encoding","Windows-1252 ");
mais ça n'a pas marché.
j'ai forcé java JVM avec System.setProperty( "file.encoding","Windows-1252 ");
mais ça n'a pas marché.
m3allem58
Messages postés
58
Date d'inscription
mardi 10 mars 2009
Statut
Membre
Dernière intervention
7 janvier 2014
9 oct. 2013 à 19:35
9 oct. 2013 à 19:35
j'ai trouvé entre temps une autre solution,
Charset cs = Charset.forName("windows-1252");
ByteBuffer b = cs.encode(String.valueOf('^'));
int code = b.get(0) & 0xFF
merci.
Charset cs = Charset.forName("windows-1252");
ByteBuffer b = cs.encode(String.valueOf('^'));
int code = b.get(0) & 0xFF
merci.
KX
Messages postés
16753
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
25 novembre 2024
3 019
Modifié par KX le 9/10/2013 à 19:47
Modifié par KX le 9/10/2013 à 19:47
Je complète avec les notions de Java ;-)
Ce n'est pas la peine de forcer Java à travailler en windows-1252 car c'est déjà le charset par défaut sous Windows vu que c'est le charset du système.
Après effectivement il y a des caractères qui se ressemblent dans les tables Unicode, car ils ne sont pas rangés selon leur ressemblance mais selon leurs origines et leurs rôles. Par exemple le 'A' peut à la fois être "Latin capital letter a" 0x0041, "Greek capital letter alpha" 0x0391, "Cyrillic capital letter a" 0x0410, etc.
Donc effectivement tu as les caractères 136 et 710 qui ressemblent à des accents circonflexes, mais ils n'en sont pas... d'ailleurs quand tu les affiches on voit clairement qu'ils sont plus petits. Le seul accent circonflexe est celui que tu as sur ton clavier, le caractère ascii 94.
La confiance n'exclut pas le contrôle
Ce n'est pas la peine de forcer Java à travailler en windows-1252 car c'est déjà le charset par défaut sous Windows vu que c'est le charset du système.
System.out.println(Charset.defaultCharset()); // windows-1252
Après effectivement il y a des caractères qui se ressemblent dans les tables Unicode, car ils ne sont pas rangés selon leur ressemblance mais selon leurs origines et leurs rôles. Par exemple le 'A' peut à la fois être "Latin capital letter a" 0x0041, "Greek capital letter alpha" 0x0391, "Cyrillic capital letter a" 0x0410, etc.
Donc effectivement tu as les caractères 136 et 710 qui ressemblent à des accents circonflexes, mais ils n'en sont pas... d'ailleurs quand tu les affiches on voit clairement qu'ils sont plus petits. Le seul accent circonflexe est celui que tu as sur ton clavier, le caractère ascii 94.
System.out.println((int) '^'); // 94
System.out.println(Character.getName(94)); // CIRCUMFLEX ACCENT
System.out.println(Character.getName(136)); // CHARACTER TABULATION SET
System.out.println(Character.getName(710)); // MODIFIER LETTER CIRCUMFLEX ACCENT
// Affichage graphique (la console Windows ne supporte pas l'Unicode)
JOptionPane.showMessageDialog(null, "\u005e\u0088\u02c6");
La confiance n'exclut pas le contrôle