Che cos'è il formato di file UTF8?
L'estensione .utf8 contrassegna un file di testo semplice esplicitamente codificato in UTF-8 - la codifica di caratteri Unicode dominante sul web moderno e nella maggior parte dei sistemi operativi. UTF-8 è stato progettato da Ken Thompson e Rob Pike nel settembre 1992 e successivamente standardizzato come RFC 3629 (2003); codifica ogni code point Unicode utilizzando da uno a quattro byte, rimanendo pienamente retrocompatibile con ASCII.
L'estensione in sé non è un formato di file distinto. È una convenzione informale utilizzata per segnalare la codifica - più comunemente quando uno strumento come iconv -t UTF-8 converte un file con codifica legacy, o quando un progetto memorizza copie gemelle in diverse codifiche e ha bisogno di distinguerle. Rinomina un file .utf8 in un file .txt e si comporterà in modo identico; qualsiasi editor o visualizzatore che gestisce il testo semplice lo aprirà senza modifiche.
Un file .utf8 può opzionalmente iniziare con il byte-order mark (BOM) UTF-8, la sequenza di tre byte EF BB BF. La maggior parte degli strumenti Linux e macOS omette il BOM; le applicazioni Windows storicamente lo aggiungevano. I lettori che trattano il file come Windows-1252 visualizzeranno il BOM come i caratteri spuri .
Poiché UTF-8 è la codifica predefinita di Markdown, CSV, JSON e molti altri formati di testo, il suffisso .utf8 appare più spesso nelle pipeline di conversione dati, nei flussi di lavoro di localizzazione e nei progetti di migrazione legacy dove nominare esplicitamente la codifica evita ambiguità.
Sicurezza e incolumità
RISCHIO: LOWUn file .utf8 è testo semplice e non può eseguire codice, quindi aprirne uno per leggerlo è sicuro. Le uniche avvertenze non sono malevole: scegli la codifica UTF-8 per evitare caratteri distorti e tieni presente che il BOM opzionale può confondere alcuni script o importazioni CSV. Come sempre, fidati dell'estensione solo dopo una verifica - un file che dichiara di essere «data.utf8» ma è in realtà un eseguibile rappresenterebbe il vero rischio, non il formato di testo UTF-8 in sé.
Dettagli del formato
in sintesiProgrammi che aprono file UTF8
Dettagli tecnici
specifiche approfondite| Schema di codifica | Unicode a larghezza variabile; ogni code point utilizza da 1 a 4 byte |
| Compatibilità ASCII | I byte 0x00-0x7F sono identici a US-ASCII; un file ASCII puro è un UTF-8 valido |
| Copertura caratteri | Tutti i 1.114.112 code point Unicode (da U+0000 a U+10FFFF) |
| Tipo MIME | text/plain; charset=utf-8 |
| Byte-order mark (BOM) | Prefisso opzionale di tre byte EF BB BF (U+FEFF); solitamente omesso su Linux/macOS, a volte aggiunto dagli strumenti Windows |
| Ordinamento dei byte | Indipendente dall'ordine dei byte; l'endianness non è un problema, a differenza di UTF-16 o UTF-32 |
| Struttura del file | Sequenza piatta di caratteri codificati; nessun header obbligatorio, schema o metadati |
| Ruolo dell'estensione | Solo convenzione di denominazione - segnala la codifica UTF-8 a strumenti e umani; strutturalmente identico a un file .txt |
| Sincronizzazione automatica | I byte di continuazione iniziano sempre con 10xxxxxx; un lettore può risincronizzarsi dopo una corruzione dei dati senza dover scansionare dall'inizio |
| Byte per code point | 1 byte (U+0000-U+007F), 2 byte (U+0080-U+07FF), 3 byte (U+0800-U+FFFF), 4 byte (U+10000-U+10FFFF) |
| Fine riga | Non obbligatorio; i file possono usare LF (Unix/macOS), CR+LF (Windows) o solo CR (legacy Mac) |
| Compressione | Nessuna integrata; la ridondanza del testo rende i file .utf8 comprimibili efficientemente con gzip, zstd o bzip2 |
| Dimensione tipica del file | Da pochi byte a molti megabyte; il testo nel range ASCII ha la stessa dimensione byte per byte dell'ASCII; gli script non latini richiedono 2-4 byte per carattere |
| Strumenti di generazione comuni | iconv -t UTF-8, Python str.encode('utf-8'), editor come VS Code, Vim (:set fileencoding=utf-8) e Notepad (Windows 10+) |
| Rilasciato | UTF-8 designed 1992; standardized in Unicode/ISO 10646. The .utf8 hint suffix is a later informal convention |
| Ultima versione | UTF-8 per current Unicode (e.g. Unicode 16.0, 2024) and RFC 3629 |
| Standard aperto | Sì · royalty-free |
| Specifica | datatracker.ietf.org |
Conversioni UTF8
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file UTF8.