Il Byte Order Mark (BOM) è una piccola sequenza di byte che viene posizionata all'inizio di un flusso di dati di puro testo, tipicamente un file, per indicarne il tipo di codifica Unicode.
I byte da usare nelle intestazioni delle varie codifiche sono i seguenti:
Codifica | BOM |
---|---|
UTF-32, big-endian | 00 00 FE FF |
UTF-32, little-endian | FF FE 00 00 |
UTF-16, big-endian | FE FF |
UTF-16, little-endian | FF FE |
UTF-8 | EF BB BF |
Utilizzo del BOM
Nel caso di un file o di un'altra sequenza di dati di testo e non binaria, il BOM permette di identificare subito se il testo è in formato Unicode e, in caso affermativo, il tipo esatto di codifica. Ciò è utile quando non si conosce a priori la codifica utilizzata; se invece in una particolare situazione questa è sempre nota i byte del BOM possono risultare inutili o addirittura dannosi.
A seconda delle applicazioni l'uso del BOM può essere obbligatorio, opzionale, oppure potrebbe non essere supportato e causare errori. Un semplice programma come il Blocco note di Windows è in grado di riconoscere la codifica dei file di testo aperti in base al BOM e di mostrarli correttamente nascondendo all'utente i byte iniziali che compongono il BOM stesso.
Un esempio in cui il BOM è sconsigliato è quello dei file PHP in cui la presenza del BOM comporta un output verso il browser impedendo l'utilizzo di session_start() o l'invio di altri header.
Collegamenti esterni
- (EN) Byte Order Mark (BOM) FAQ, su unicode.org.
wikipedia, wiki, libro, libri, biblioteca, articolo, lettura, download, scarica, gratuito, download gratuito, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, immagine, musica, canzone, film, libro, gioco, giochi, mobile, telefono, Android, iOS, Apple, cellulare, Samsung, iPhone, Xiomi, Xiaomi, Redmi, Honor, Oppo, Nokia, Sonya, MI, PC, Web, computer