UCS-2 vs UTF-16
UCS-2 et UTF-16 sont des schémas de codage à deux caractères qui utilisent 2 octets, soit 16 bits, pour représenter chaque caractère; ainsi les 2 et 16 suffixes. La principale différence entre UCS-2 et UTF-16 est celle qui est utilisée aujourd'hui. UCS-2 est un système plus ancien qui a depuis été considéré comme obsolète et remplacé par le beaucoup plus récent et plus puissant UTF-16..
UCS-2 est un codage à largeur fixe qui utilise deux octets pour chaque caractère; ce qui signifie, il peut représenter un total de 216 caractères ou légèrement plus de 65 000. D'autre part, UTF-16 est un schéma de codage à largeur variable qui utilise un minimum de 2 octets et un maximum de 4 octets pour chaque caractère. Cela permet à UTF-16 de représenter n’importe quel caractère dans Unicode tout en utilisant un espace minimal pour les caractères les plus couramment utilisés. UCS-2 et UTF-16 ont des points de code identiques pour la majorité des 65 000 caractères. ils sont donc largement équivalents. Cela permet aux applications compatibles UTF-16 d'interpréter correctement les codes UCS-2. Mais l’inverse ne fonctionnerait pas à cause des nombreuses améliorations apportées à UTF-16..
L'une des améliorations apportées est la possibilité de représenter des scripts allant de droite à gauche plutôt que de gauche à droite. Dans UTF-16, les scripts peuvent identifier la direction, permettant ainsi à l'application de restituer correctement les mots stockés dans le code. UCS-2 n'a pas cette capacité et ne fonctionnera donc pas avec des scripts comme l'arabe et l'hébreu, qui se déplacent de droite à gauche. Une autre caractéristique de l'UTF-16 est la normalisation. La normalisation traite les mots qui signifient la même chose mais sont représentés différemment de manière identique. Par exemple, les mots «ne peut pas» et «ne peut pas» sont identiques puisque ce dernier n’est qu’une contraction du premier. Ceci est très important, en particulier lorsque vous recherchez de tels mots, car cela permettrait un résultat de recherche plus complet. Dans UCS-2, cela ne se produit pas automatiquement. L’application doit donc implémenter elle-même une telle fonctionnalité..
Il n'y a vraiment aucune raison de choisir UCS-2 plutôt que UTF-16, mis à part le fait d'avoir une application dont vous n'avez pas besoin pour supporter UTF-16. Dans tous les aspects, UTF-16 est supérieur à UCS-2. Il est également largement compatible avec les versions antérieures, vous évitant ainsi de vous inquiéter des fichiers encodés dans UCS-2..
Résumé: