UTF-8 er den mest almindelige tegnkodningsstandard til digitale dokumenter og kommunikation. Før UTF-8 blev udbredt, måtte dokumenter på forskellige sprog ofte gemmes med forskellig kodning. Et dokument gemt i den udbredte kodning ISO-8859-1 kunne for eksempel ikke indeholde både det danske bogstav æ og euro-symbolet €. Med UTF-8 kan man have bogstaver og andre tegn fra alle verdens sprog i det samme dokument, gemt med den samme kodning. Standarden omfatter også en lang række emojier.
UTF-8
Licens: CC BY NC SA 3.0

UTF-8 er den mest almindelige tegnkodningsstandard til digitale dokumenter og kommunikation. Før UTF-8 blev udbredt, måtte dokumenter på forskellige sprog ofte gemmes med hver sin kodning. Et dokument gemt i den udbredte ISO-8859-1-kodning kunne for eksempel ikke rumme både det danske bogstav æ og euro-symbolet . Med UTF-8 kan man derimod have bogstaver og andre tegn fra alle verdens sprog i det samme dokument, gemt med den samme kodning. Standarden omfatter også et stort antal emojier.

I dag bruger omkring 99 procent af alle websteder UTF-8 som tegnkodning, og standarden dominerer også andre digitale dokumenter. Når stort set alle moderne computere benytter UTF-8, kan en emoji sendt fra en Apple-telefon for eksempel fortolkes korrekt af en Android-telefon.

Standarden forvaltes af Unicode-konsortiet, en amerikanskregistreret non-profit-organisation, som udvikler Unicode-standarden.

Forskelle fra tidligere standarder

Før UTF-8 blev almindelig, måtte dokumenter på forskellige sprog gemmes med forskellig kodning. Et dokument kunne for eksempel ikke indeholde både bogstavet æ og euro-symbolet €, fordi forskellige tegnsæt understøttede forskellige tegn, hvilket gjorde det vanskeligt at kombinere dem i ét dokument.

I Danmark – og mange andre lande – var kodninger som ISO-8859-1 (Latin-1) meget brugte. ISO-8859-1 er en single-byte-kodning: den anvender én byte pr. tegn og kan derfor vise 256 tegn. Det dækkede de vigtigste vesteuropæiske sprog, inklusive de danske bogstaver æ, ø, å. Alligevel var ISO-8859-1 begrænset til netop disse 256 tegn.

Windows-1252 var en almindelig udvidelse af ISO-8859-1, især på Windows-platforme, og tilføjede ekstra tegn som euro-symbolet og flere typografiske symboler.

Mens ISO-8859-1 kun kunne vise 256 tegn, kan UTF-8 håndtere de mere end 150 000 tegn i Unicode. Dermed kan man problemfrit blande tekst på mange sprog og med mange symboler i samme dokument.

UTF-8-standarden

UTF-8 er en binær repræsentationsform af tegn i Unicode-tegnsættet med variabel tegngrænse. Unicode er en nummereret samling af tegn, og UTF-8 repræsenterer disse numre med mellem én og fire byte:

  • De første 128 tegn svarer til ASCII, så UTF-8 er bagudkompatibel med ASCII.
  • Alfabetiske tegn a-z og tal bruger én byte, mens tegn som æ, ø, å bruger to byte.
  • Et tegn kan optage op til fire byte.

Når man gemmer tekst i UTF-8, bliver filer lidt større end i ISO-8859-1 – et dansk dokument vokser typisk 1-3 procent. Dokumenter med ren ASCII-tekst har dog samme filstørrelse i begge kodninger. Denne lille ulempe opvejes rigeligt af fordelen ved at kunne gemme flersprogede tekster i ét dokument.

Eksempler på UTF-8-kodning

1 byte: Tegn inden for ASCII-området

Dette gælder for eksempel bogstavet "A":

  • Unicode-værdi: U+0041
  • Binært: 01000001
  • Hex: 41

2 byte: Mange vesteuropæiske tegn

Dette gælder for eksempel bogstavet "Æ":

  • Unicode-værdi: U+00C6
  • Binært: 11000011 10000110
  • Hex: C3 86

3 byte: Tegn fra mange asiatiske sprog

Dette gælder for eksempel japanske tegn som 語.

  • Unicode-værdi: U+8A9E
  • Binært: 11101000 10101010 10011000
  • Hex: E8 AA 9E

4 byte: Emoji og nogle historiske tegn

Dette gælder for eksempel emojien 😀.

  • Unicode-værdi: U+1F600
  • Binært: 11110000 10011111 10011000 10000000
  • Hex: F0 9F 98 80

Læs mere i Lex

Kommentarer

Kommentarer til artiklen bliver synlige for alle. Undlad at skrive følsomme oplysninger, for eksempel sundhedsoplysninger. Fagansvarlig eller redaktør svarer, når de kan.

Du skal være logget ind for at kommentere.

eller registrer dig