Aller au contenu
uencoder

UTF-8

UTF-8 est la forme d'encodage Unicode de longueur variable utilisant 1 à 4 octets par point de code ; il est entièrement rétrocompatible avec ASCII et constitue le standard de facto du web et des systèmes modernes.

Objectif

Couvrir tous les points de code Unicode en restant compatible ASCII (pas d'expansion pour l'anglais), indépendant de l'ordre des octets et auto-synchronisant, ce qui convient au transport réseau.

Mécanisme

La plage du point de code détermine la longueur en octets : U+0000-007F prend 1 octet ; U+0080-07FF, 2 ; U+0800-FFFF, 3 ; U+10000-10FFFF, 4. Le nombre de bits 1 en tête du premier octet indique la longueur de la séquence.

Cas d’usage

  • Encodage par défaut des documents HTML/XML/JSON
  • Transport des corps HTTP et des e-mails
  • Encodage des fichiers de code source
  • Jeu de caractères par défaut des bases de données

Exemples

  • entrée
    A
    Output
    0x41

    An ASCII character, 1 byte

  • entrée
    U+4E2D
    Output
    0xE4 0xB8 0xAD

    A BMP CJK ideograph, 3 bytes

Erreurs courantes

Truncating a UTF-8 string mid-sequence, producing invalid bytes
Truncate at character boundaries or use encoding-aware APIs

Termes associés

Outils associés

References