A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
CESU-8 (zkratka anglického Compatibility Encoding Scheme for UTF-16: 8-bit, Schéma pro kompatibilní kódování UTF-16, 8bitové) je způsob kódování znaků Unicode, který je téměř shodný s UTF-8, ale liší se způsobem práce se znaky od U+10000 výše. Je určen výhradně pro vnitřní použití v systémech, které nejsou schopny dobře pracovat s úplnou znakovou sadou Unicode při použití standardních kódování, není zamýšlen jako formát pro obecnou výměnu dat.
Při kódování do CESU-8 se vstupní text nejprve zakóduje do UTF-16 (tj. znaky mimo Basic Multilingual Plane se zapíší pomocí surrogate pairs), výsledek se poté zakóduje pomocí UTF-8. Znamená to, že kódování znaků BMP (všechny znaky od U+0000 do U+FFFF) je shodné v UTF-8 i CESU-8. Znaky, které jsou v UTF-8 kódovány do čtyř bajtů, jsou však v CESU-8 kódovány pomocí šestibajtové posloupnosti.[1]
CESU-8 je obdobné tzv. Modified UTF-8, které se používá v Javě, tam se ovšem navíc používá speciální kódování znaku U+0000.[2]
V praxi se kódování CESU-8 používá při práci s některými databázemi (Oracle, MySQL), které neumějí pracovat s UTF-8 řetězci reprezentujícími znaky mimo BMP, ale nic nenamítají proti (z hlediska UTF-8 neplatnému) kódování těchto znaků prostřednictvím surrogate pairs, tzn. CESU-8.
V databázovém systému Oracle je od verze 8.0 dostupná znaková sada pojmenovaná UTF8, která však ve skutečnosti reprezentuje právě CESU-8. Až ve verzi 9.0 přibyla podpora „skutečného“ UTF-8, pod názvem AL32UTF8.[3]
Databázový systém MySQL od své verze 4.1 podporuje znakovou sadu utf8, ale jen pro znaky BMP.[4] Znaky mimo BMP nelze do databáze uložit v kódování UTF-8; databáze však nebrání uložení takových znaků pomocí CESU-8, byť tomuto kódování nerozumí a některé funkce u těchto znaků tedy nefungují správně (každý takový znak je např. počítán za dva znaky). Plná podpora UTF-8 (a obecně doplňkových znaků Unicode) se plánuje do připravované verze 5.5.[5]
Příklad kódování
Vstup | U+0045 E |
U+0205 ȅ |
U+1D53C 𝔼 | |
---|---|---|---|---|
UTF-8 | 45 | C8 85 | F0 9D 94 BC | |
UTF-16 | 0045 | 0205 | D835 | DD3C |
CESU-8 | 45 | C8 85 | ED A0 B5 | ED B4 BC |
Je vidět, že znaky BMP jsou v UTF-8 i CESU-8 kódovány stejně, rozdíl je zde jen ve znaku U+1D53C, který leží mimo BMP.
Reference
- ↑ Unicode Technical Report #26: Compatibility Encoding Scheme for UTF-16: 8-bit
- ↑ Norbert Lindenberg, Masayoshi Okutsu: Supplementary Characters in the Java Platform, Sun Developer Network, květen 2004
- ↑ Oracle® Database Globalization Support Guide 10g Release 2 (10.2) Archivováno 22. 12. 2008 na Wayback Machine., kapitola 6: Supporting Multilingual Databases with Unicode. Part Number B14225-02. Oracle, 2008
- ↑ MySQL 5.0 Reference Manual, kapitola 9.1.9: Unicode Support
- ↑ MySQL 5.5 Reference Manual, 9.1.10. Unicode Support
Související články
Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok. Podrobnejšie informácie nájdete na stránke Podmienky použitia.
Antropológia
Aplikované vedy
Bibliometria
Dejiny vedy
Encyklopédie
Filozofia vedy
Forenzné vedy
Humanitné vedy
Knižničná veda
Kryogenika
Kryptológia
Kulturológia
Literárna veda
Medzidisciplinárne oblasti
Metódy kvantitatívnej analýzy
Metavedy
Metodika
Text je dostupný za podmienok Creative
Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších
podmienok.
Podrobnejšie informácie nájdete na stránke Podmienky
použitia.
www.astronomia.sk | www.biologia.sk | www.botanika.sk | www.dejiny.sk | www.economy.sk | www.elektrotechnika.sk | www.estetika.sk | www.farmakologia.sk | www.filozofia.sk | Fyzika | www.futurologia.sk | www.genetika.sk | www.chemia.sk | www.lingvistika.sk | www.politologia.sk | www.psychologia.sk | www.sexuologia.sk | www.sociologia.sk | www.veda.sk I www.zoologia.sk