BOM
Le BOM (marque d'ordre des octets) est le caractère Unicode U+FEFF, placé au début d'un flux de texte pour indiquer la forme d'encodage et l'ordre des octets.
Objectif
Il signale l'ordre des octets gros-boutiste ou petit-boutiste en UTF-16/UTF-32 et sert de signature d'encodage en UTF-8 (même si UTF-8 n'a pas d'ambiguïté d'ordre des octets).
Mécanisme
U+FEFF est rendu en octets selon la forme d'encodage : EF BB BF en UTF-8, FF FE en UTF-16LE et FE FF en UTF-16BE. Un décodeur lit les premiers octets et les compare aux BOM connus pour déterminer l'encodage. U+FEFF est lui-même un espace insécable de largeur nulle, d'où son double rôle de signature.
Cas d’usage
- Détection automatique de l'encodage des fichiers texte
- Échange de texte entre plateformes
- Marqueurs d'encodage pour fichiers CSV/TSV
- Encodage des fichiers d'exportation de bases de données
Exemples
- entrée
UTF-8 BOMOutputEF BB BFThe first three bytes of a file
Erreurs courantes
- A UTF-8 BOM being rejected by a JSON parser (RFC 8259 forbids it)
- Do not use a BOM in JSON files
Termes associés
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. GLOSSAIRE
UTF-16
UTF-16 est la forme d'encodage Unicode de longueur variable utilisant 2 ou 4 octets par point de code : les caractères du BMP occupent une unité de code de 16 bits et ceux des plans supplémentaires, une paire de substitution (2 unités). GLOSSAIRE
Endianness
Le endianness est l'ordre des octets des valeurs multi-octets en mémoire : gros-boutiste stocke d'abord l'octet de poids fort, petit-boutiste d'abord l'octet de poids faible. GLOSSAIRE
Byte Order Mark
La marque d'ordre des octets (BOM) est le caractère U+FEFF placé au début d'un texte Unicode pour indiquer la forme d'encodage et l'ordre des octets. GLOSSAIRE
Unicode
Unicode est la norme internationale de codage de caractères qui attribue un point de code unique (U+0000 à U+10FFFF) à chaque caractère de la quasi-totalité des écritures du monde, avec un espace de 1 114 112 points. GLOSSAIRE
Outils associés
Détecteur d'encodage
Vérifie l'encodage du texte : sous-ensemble ASCII, BOM UTF-8 et caractères non ASCII. Le texte saisi est toujours réencodé en UTF-8, les encodages historiques (GBK/Big5/Shift-JIS) ne peuvent donc pas être distingués. Gratuit, privé, 100% côté client. OUTIL
Référence des jeux de caractères
Reference table of character encodings. Gratuit, privé, 100% côté client. OUTIL
Ajout de BOM au fichier
Ajouter le BOM UTF-8 au contenu du fichier. OUTIL
Suppression de BOM du fichier
Supprimer le BOM UTF-8 du contenu du fichier. OUTIL