Hva er UTF8-filformatet?
Filendelsen .utf8 markerer en ren tekstfil som er eksplisitt kodet i UTF-8 - den dominerende Unicode-tegnkodingen på det moderne nettet og i de fleste operativsystemer. UTF-8 ble designet av Ken Thompson og Rob Pike i september 1992 og senere standardisert som RFC 3629 (2003); den koder hvert Unicode-kodepunkt ved hjelp av én til fire byte, samtidig som den forblir fullstendig bakoverkompatibel med ASCII.
Selve filendelsen er ikke et eget filformat. Det er en uformell konvensjon som brukes for å signalisere koding - oftest når et verktøy som iconv -t UTF-8 konverterer en fil med eldre koding, eller når et prosjekt lagrer søskenkopier i forskjellige kodinger og trenger å skille dem fra hverandre. Gi en .utf8-fil nytt navn til en .txt-fil, og den vil fungere identisk; alle redigeringsprogrammer eller visningsverktøy som håndterer ren tekst vil åpne den uten endringer.
En .utf8-fil kan valgfritt begynne med et UTF-8 byte-rekkefølge-merke (BOM), sekvensen på tre byte EF BB BF. De fleste verktøy i Linux og macOS utelater BOM; Windows-applikasjoner har historisk sett lagt den til. Lesere som behandler filen som Windows-1252 vil vise BOM som de merkelige tegnene .
Fordi UTF-8 er standardkodingen for Markdown, CSV, JSON og mange andre tekstformater, dukker .utf8-suffikset oftest opp i datakonverteringsrørledninger, lokaliseringsarbeidsflyter og migreringsprosjekter der det å navngi kodingen eksplisitt unngår tvetydighet.
Sikkerhet og trygghet
RISIKO: LOWEn .utf8-fil er ren tekst og kan ikke kjøres, så det er trygt å åpne en for å lese den. De eneste forbeholdene er ikke-ondsinnede: velg UTF-8-koding for å unngå uleselige tegn, og vær oppmerksom på at valgfri BOM kan forvirre enkelte skript/CSV-importer. Som alltid bør du bare stole på filendelsen etter en sunnhetskontroll - en fil som utgir seg for å være «data.utf8», men som egentlig er en kjørbar fil, ville vært den virkelige risikoen, ikke selve UTF-8-tekstformatet.
Formatdetaljer
i et nøtteskallProgrammer som åpner UTF8-filer
Tekniske detaljer
dyp spesifikasjon| Kodingsskjema | Unicode med variabel bredde; hvert kodepunkt bruker 1 til 4 byte |
| ASCII-kompatibilitet | Byte 0x00-0x7F er identiske med US-ASCII; en ren ASCII-fil er gyldig UTF-8 |
| Tegndekning | Alle 1 114 112 Unicode-kodepunkter (U+0000 til U+10FFFF) |
| MIME-type | text/plain; charset=utf-8 |
| Byte-rekkefølge-merke (BOM) | Valgfritt prefiks på tre byte EF BB BF (U+FEFF); vanligvis utelatt på Linux/macOS, noen ganger lagt til av Windows-verktøy |
| Byte-rekkefølge | Uavhengig av byte-rekkefølge; endianness er ikke et problem, i motsetning til UTF-16 eller UTF-32 |
| Filstruktur | Flat sekvens av kodede tegn; ingen obligatorisk overskrift, skjema eller metadata |
| Rollen til filendelsen | Kun en navnekonvensjon - signaliserer UTF-8-koding til verktøy og mennesker; strukturelt identisk med en .txt-fil |
| Selv-synkronisering | Fortsettelses-byte begynner alltid med 10xxxxxx; en leser kan synkronisere på nytt etter datakorrupsjon uten å skanne fra starten |
| Byte per kodepunkt | 1 byte (U+0000-U+007F), 2 byte (U+0080-U+07FF), 3 byte (U+0800-U+FFFF), 4 byte (U+10000-U+10FFFF) |
| Linjeslutt | Ikke påkrevd; filer kan bruke LF (Unix/macOS), CR+LF (Windows) eller bare CR (eldre Mac) |
| Komprimering | Ingen innebygd; tekstoverflødighet gjør at .utf8-filer komprimeres effektivt med gzip, zstd eller bzip2 |
| Typisk filstørrelse | Fra få byte til mange megabyte; tekst i ASCII-området har nøyaktig samme størrelse som ASCII; ikke-latinske skrifter krever 2-4 byte per tegn |
| Vanlige genereringsverktøy | iconv -t UTF-8, Python str.encode('utf-8'), redigeringsprogrammer som VS Code, Vim (:set fileencoding=utf-8) og Notepad (Windows 10+) |
| Utgitt | UTF-8 designed 1992; standardized in Unicode/ISO 10646. The .utf8 hint suffix is a later informal convention |
| Siste versjon | UTF-8 per current Unicode (e.g. Unicode 16.0, 2024) and RFC 3629 |
| Åpen standard | Ja · royalty-fri |
| Spesifikasjon | datatracker.ietf.org |
UTF8-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om UTF8-filer.