Vad är filformatet UTF8?
Filändelsen .utf8 markerar en vanlig textfil som uttryckligen är kodad i UTF-8 - den dominerande Unicode-teckenkodningen på det moderna webben och i de flesta operativsystem. UTF-8 designades av Ken Thompson och Rob Pike i september 1992 och standardiserades senare som RFC 3629 (2003); den kodar varje Unicode-kodpunkt med en till fyra byte samtidigt som den förblir helt bakåtkompatibel med ASCII.
Själva filändelsen är inte ett separat filformat. Det är en informell konvention som används för att signalera kodning - oftast när ett verktyg som iconv -t UTF-8 konverterar en fil med äldre kodning, eller när ett projekt lagrar syskonkopior i olika kodningar och behöver skilja dem åt. Om du byter namn på en .utf8-fil till en .txt-fil fungerar den identiskt; alla redigerare eller visningsprogram som hanterar vanlig text kommer att öppna den utan modifiering.
En .utf8-fil kan valfritt börja med ett UTF-8 byte-order mark (BOM), den tre byte långa sekvensen EF BB BF. De flesta verktyg i Linux och macOS utelämnar BOM; Windows-program har historiskt sett lagt till det. Läsare som behandlar filen som Windows-1252 kommer att visa BOM som de herrelösa tecknen .
Eftersom UTF-8 är standardkodningen för Markdown, CSV, JSON och många andra textformat, förekommer suffixet .utf8 oftast i datakonverteringspipelines, lokaliseringsarbetsflöden och äldre migreringsprojekt där explicit namngivning av kodningen undviker tvetydighet.
Säkerhet & trygghet
RISK: LOWEn .utf8-fil är vanlig text och kan inte köras, så det är säkert att öppna en för att läsa den. De enda förbehållen är icke-maliciösa: välj UTF-8-kodning för att undvika förvrängda tecken, och var medveten om att den valfria BOM-signatur kan förvirra vissa skript/CSV-importer. Som alltid bör du bara lita på filändelsen efter en rimlighetskontroll - en fil som påstår sig vara «data.utf8» men som egentligen är en körbar fil utgör den verkliga risken, inte själva UTF-8-textformatet.
Formatdetaljer
i ett nötskalProgram som öppnar UTF8-filer
Tekniska detaljer
djup specifikation| Kodningsschema | Unicode med variabel bredd; varje kodpunkt använder 1 till 4 byte |
| ASCII-kompatibilitet | Byte 0x00-0x7F är identiska med US-ASCII; en ren ASCII-fil är giltig UTF-8 |
| Teckentäckning | Alla 1 114 112 Unicode-kodpunkter (U+0000 till U+10FFFF) |
| MIME-typ | text/plain; charset=utf-8 |
| Byte-order mark (BOM) | Valfritt prefix på tre byte EF BB BF (U+FEFF); utelämnas vanligtvis på Linux/macOS, läggs ibland till av Windows-verktyg |
| Byte-ordning | Oberoende av byte-ordning; endianness är inte ett problem, till skillnad från UTF-16 eller UTF-32 |
| Filstruktur | Platt sekvens av kodade tecken; inget obligatoriskt huvud, schema eller metadata |
| Filändelsens roll | Endast en namnkonvention - signalerar UTF-8-kodning till verktyg och människor; strukturellt identisk med en .txt-fil |
| Själv-synkronisering | Fortsättningsbyte börjar alltid med 10xxxxxx; en läsare kan synkronisera om efter datakorruption utan att skanna om från början |
| Byte per kodpunkt | 1 byte (U+0000-U+007F), 2 byte (U+0080-U+07FF), 3 byte (U+0800-U+FFFF), 4 byte (U+10000-U+10FFFF) |
| Radbrytningar | Inte föreskrivet; filer kan använda LF (Unix/macOS), CR+LF (Windows) eller enbart CR (äldre Mac) |
| Komprimering | Ingen inbyggd; textredundans gör att .utf8-filer komprimeras effektivt med gzip, zstd eller bzip2 |
| Typisk filstorlek | Från byte till många megabyte; text i ASCII-intervallet har exakt samma storlek som ASCII; icke-latinska skrifter kräver 2-4 byte per tecken |
| Vanliga verktyg för generering | iconv -t UTF-8, Python str.encode('utf-8'), redigerare som VS Code, Vim (:set fileencoding=utf-8) och Notepad (Windows 10+) |
| Släppt | UTF-8 designed 1992; standardized in Unicode/ISO 10646. The .utf8 hint suffix is a later informal convention |
| Senaste version | UTF-8 per current Unicode (e.g. Unicode 16.0, 2024) and RFC 3629 |
| Öppen standard | Ja · royaltyfri |
| Specifikation | datatracker.ietf.org |
UTF8-konverteringar
Frågor & svar
frågat av användareInga frågor än - bli den första att fråga om UTF8-filer.