Glossario

Codifica dei caratteri

codifica del testo

Una codifica dei caratteri definisce come caratteri o punti di codice sono rappresentati da sequenze di byte e poi decodificati.

Definizione

Una codifica dei caratteri stabilisce come convertire unità testuali in numeri o byte per memorizzarle e trasmetterle, e come ricostruire il testo. Mittente e destinatario devono usare la stessa codifica.

ASCII, UTF-8, UTF-16 e le vecchie pagine di codice sono codifiche o schemi. Unicode definisce repertorio e punti; UTF-8 e UTF-16 la loro rappresentazione concreta.

Come funziona

Il codificatore associa sequenze valide e il decodificatore applica le regole inverse. In UTF-8, A è 41 e è E2 82 AC. Le codifiche a lunghezza variabile usano quantità diverse di byte.

Il charset HTTP, la dichiarazione del file o il protocollo indicano il decoder. Senza contesto, gli stessi byte possono generare testi differenti.

Esempio pratico

Decodificati come UTF-8, i byte E2 82 AC producono . Con una codifica a byte singolo estranea producono altri caratteri: questa corruzione è spesso chiamata mojibake.

La conversione richiede di decodificare correttamente l’origine e ricodificare i caratteri nella destinazione. Cambiare solo l’etichetta non converte i byte.

Errori comuni

Una sequenza non valida può essere rifiutata o sostituita con U+FFFD. Se la codifica di destinazione non rappresenta un carattere, può verificarsi errore, sostituzione o perdita.

Indicatore d’ordine dei byte, endianness, normalizzazione Unicode e fine riga sono questioni correlate ma distinte. Codificare non significa cifrare.

Domande frequenti

No. Unicode assegna punti e proprietà; UTF-8 codifica quei punti in byte.

I byte possono essere stati decodificati male o sostituiti perché la destinazione non poteva rappresentare i caratteri.

No. Alcuni byte sono validi in più codifiche, soprattutto brevi testi ASCII. Servono metadati, BOM o contesto.

Vedi anche
Termini correlati