systèmes gérant spécifiquement leur langue. 
Pour palier à ces inconvénients, il a fallu trouver un autre système de codage des caractères. L’arrivée des ordinateurs 
avec une grande capacité mémoire et une gestion avancée de l’affichage des caractères permet de disposer de polices 
de caractères (un fichier qui contient tous les dessins des caractères à destination de l’écran ou de l’imprimante) qui 
peuvent  contenir  les  alphabets  de  la  plupart  des  langues.  Par  exemple  dans  la  police  Arial,  on  pourrait  trouver  les 
caractères européens, mais aussi hébreux, arabes, chinois, japonais, et ainsi de suite. Mais comment représenter ces 
milliers de caractères différents en mémoire ? 
Une norme appelée Unicode, reconnue par la plupart des systèmes d’exploitation et des logiciels notamment sous Unix 
et Windows, fait sauter cette limitation. Chaque caractère dispose d’un nom et d’un identifiant numérique, de manière 
unifiée  et  quelque  soit  le  système  cible.  C’est­à­dire  que  tout  produit  sachant  interpréter  les  caractères  unicode 
affichera les chaînes de caractères écrites sous cette norme avec les bons caractères. 
Un texte unicode en chinois s’affichera en chinois si votre traitement de texte gère l’unicode et dispose de la police de 
caractères unicode contenant les idéogrammes chinois. Notez que vous n’avez pas à vous soucier de la manière dont 
vous tapez le texte : le système d’exploitation et les logiciels le font à votre place : vous continuez à taper votre texte 
comme vous l’avez toujours fait. 
Unicode est une norme de représentation interne des caractères, et propose divers formats de stockage en mémoire. 
Actuellement,  unicode  représente  plus  de  245000  chiffres,  lettres,  symboles,  ponctuation,  syllabes,  règles  de 
représentation,  etc.  Il  faut  de  la  place  pour  représenter  ceci.  La  méthode  la  plus  courante,  utilisée  notamment  par 
défaut sous Linux, est l’UTF­8, Universal Transformation Format. Son étude dépasse le cadre de ce livre et prendrait 
plusieurs pages. Cependant, sachez que le modèle Unicode est un modèle en couches. 
La première couche est le jeu de caractères abstrait, en fait une liste des caractères et leur nom précis. Par exemple le 
"Ç" correspond à "Lettre majuscule latine c cédille". 
La seconde est l’index numérique du caractère codé, appelé point de code, noté U+XXXX où XXXX est en hexadécimal. 
Sans rentrer dans les détails, le "Ç" est représenté par le point de codage U+00C7. Il existe plusieurs niveaux ensuite. 
Java  utilise  un  codage  des  caractères  sous  forme  Unicode  sur  16  bits.  Le  premier  octet  en  partant  de  la  gauche 
représente le jeu de caractère, le second le numéro de caractère dans ce jeu. C’est pourquoi le type caractère en Java 
utilise deux octets, alors qu’il n’en utilise qu’un seul en C. 
- 5 -
© ENI Editions - All rigths reserved - Jonifar lina
45
Précédent

- 45/220

Suivant