Maison  >  Article  >  interface Web  >  Quelle est la relation entre l’encodage utf8 et unicode ? Quelle est la différence ?_Tutoriel de base

Quelle est la relation entre l’encodage utf8 et unicode ? Quelle est la différence ?_Tutoriel de base

WBOY
WBOYoriginal
2016-05-16 12:09:422091parcourir

UTF8 == Format de transformation Unicode -- 8 bits
est le format de transmission Unicode. Autrement dit, convertissez les fichiers Unicode en flux de transport BYTE.

Programme de conversion de flux UTF8 :
Entrée : entier non signé c - le point de code du caractère à encoder (entrez une valeur Unicode)
Sortie : octet b1, b2, b3, b4 - le séquence codée d'octets (sortie de quatre valeurs BYTE)
Algorithme :
if (cb1 = c>>0 & 0x7F
b2 = null
b3 = null
b4 = null
sinon si (cb1 = c>>6 & 0x1F | 0xC0
b2 = c>>0 & 0x80
b3 = null
b4 = null
sinon si (cb1 = c>>12 & 0x0F | 0xE0
b2 = c>>6 & 0x3F
b3 = c >>0 & 0x3F | 0x80
b4 = nul
sinon si (cb1 = c>>18 & 0x07 | 0xF0
b2 = c>>12 & 0x3F
b3 = c | >>6 & 0x3F | 0x80
b4 = c>>0 & 0x3F |🎜>fin si
================== ====
unicode est une table de codage, par exemple, spécifiant un code pour un caractère chinois. Similaire au GB2312-1980, GB18030, etc., mais avec des jeux de caractères différents.
=====================
Un code Unicode peut être converti en UTF8 d'une longueur d'un BYTE, ou de deux, trois ou quatre BYTE code, dépend de la valeur du code unicode. Étant donné que la valeur du code Unicode anglais est inférieure à 0x80, il ne doit être transmis qu'en UTF8 d'un BYTE, ce qui est plus rapide que l'envoi de deux BYTE d'Unicode.
UTF8 n'est qu'une méthode de "ré-encodage" conçue pour transmettre l'Unicode.
Pour convertir UTF8 en Unicode, utilisez simplement le programme que j'ai donné ci-dessus pour effectuer un rétrocalcul.

UTF8 est une solution de transition du système ASCII existant vers le système Unicode. UTF8 garantit la compatibilité ASCII et s'étend ensuite vers de grands jeux de caractères. C'est la solution recommandée par Unicode. Cependant, comme l’angle de résolution du problème est différent, ce n’est pas une bonne solution pour le système chinois existant. Le lien suivant fournit des connaissances préliminaires détaillées sur le codage UTF8 http://www.acnis.com/modules.php?name=ArticlE&file=article&sid=102 Référence :
http://www.acnis.com/modules php? name=ArticlE&file=article&sid=102
Qu'est-ce qu'Unicode. L'objectif fondamental d'Unicode est d'unifier tous les encodages, c'est-à-dire qu'il contient tous les jeux de caractères. De cette façon, tant qu'un système prend en charge Unicode, il peut gérer ces jeux de caractères. Généralement, Unicode comporte deux octets. Tous les systèmes d'exploitation Windows actuels prennent en charge Unicode.

Qu'est-ce que UTF8 ? UTF8 est un codage Unicode, c'est-à-dire que son jeu de caractères codés est cohérent avec Unicode. Mais la méthode de codage est différente. Pour les caractères anglais, le codage UTF8 est le même que la normale, en utilisant un octet. Mais pour le chinois, il doit être représenté par trois octets (trois en mémoire).

L'inconvénient de l'UTF8 et de l'Unicode est que lorsqu'il s'agit de problèmes tels que la recherche et la recherche, l'algorithme semble plus complexe et inefficace (en mémoire).

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn