UTF-8
UTF-8 (8-bitový Unicode Transformation Format) je bezstratové kódovanie s variabilnou dĺžkou určené pre Unicode znaky, ktoré vytvorili Rob Pike a Ken Thompson. Používa skupiny bajtov na reprezentovanie Unicode štandardu pre abecedy mnohých svetových jazykov. UTF-8 kódovanie je špeciálne užitočné pre prenos cez 8-bitové systémy elektronickej pošty.
Kódovania |
UTF-7 · UTF-8 · CESU-8 · UTF-16/UCS-2 · UTF-32/UCS-4 · UTF-EBCDIC · SCSU · Punycode · GB18030 |
UCS |
Obojsmerný text |
BOM |
Han zjednotenie |
Unicode a HTML |
Unicode a e-mail |
Používa 1 až 4 bajty na zapísanie znaku podľa toho, o ktorý Unicode symbol ide. Napríklad, len jeden UTF-8 bajt je potrebný na zakódovanie všetkých 128 US-ASCII znakov z Unicode rozsahu U+0000 až U+007F.
Aj keď sa môže zdať neefektívne reprezentovať Unicode znaky až štyrmi bajtmi, UTF-8 umožňuje starým systémom prenášať túto ASCII nadmnožinu. Dodatočne, dátová kompresia môže byť stále vykonaná nezávisle od použitia UTF-8.
Zatiaľ čo pri UTF-16 by boli európske a množstvo iných, napríklad najbežnejších čínskych znakov, zakódované 16-mi bitmi (ostatné 32-mi bitmi), pri UTF-8 je prvých 128 znakov (tieto sú pre všetky krajiny rovnaké) zakódovaných 8-mimi bitmi a zvyšné sú zakódované 16-timi až 32-mi bitmi. Preto UTF-8 je výhodné pre krajiny, kde väčšina znakov textu tvorí prvých 128 znakov, keďže uložený text tak zaberá menej miesta ako pri UTF-16.
IETF požaduje od všetkých internetových protokolov, aby UTF-8 bolo aspoň jediné podporované kódovanie.
Unicode hodnota | UTF-8 sekvencia |
---|---|
U-0000 – U-007F | 0xxxxxxx |
U-0080 – U-07FF | 110xxxxx 10xxxxxx |
U-0800 – U-FFFF | 1110xxxx 10xxxxxx 10xxxxxx |
U-010000 – U-1FFFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx |