CZ EN
HLEDAT  

Nápověda

Kódování speciálních znaků v textu

Počítače využívají pro kódování dat tzv. byty. Jeden byte se skládá z osmi bitů, tedy nul a jedniček. Osm nul a jedniček tvoří 256 různých kombinací, mohou tedy reprezentovat 256 různých znaků, nebo číslo od 0 do 255. Ve standardní anglické sadě znaků se kromě malých a velkých písmen, číslic, interpunkce a dalších podobných znaků nachází i kontrolní znaky (escape, enter, tabulátor atd.), znaky pro textové rámečky atp. Nezbývá tedy místo například na znaky s českou diakritikou. Proto je pro české texty nutné používat jiné kódování, které některé méně používané symboly nahrazuje za písmena s háčkem či čárkou. Těchto českých kódování ovšem existuje víc, např. Kamenických (v MS DOSu), středoevropský standard ISO-8859-2 (= ISO Latin 2), nebo středoevropská čeština OS Windows windows-1250 (nebo také cp-1250). Tyto sady obsahují víceméně stejné znaky, ovšem na jiných místech, tedy text uložený v kódování windows-1250 a zobrazený v ISO-8859-2 je z větší části čitelný až na znaky s diakritikou. Podobný problém nastává i u jiných než středoevropských znakových sad.

V poslední době se rozmáhá používání tzv. multibyte nebo také Unicode kódování (pozn. multibyte, tedy více bytů na znak se používalo již dříve např. pro japonštinu). Nejčastěji používané je kódování UTF-8. Toto kódování používá jeden byte pro běžná písmena, dva a více znaků pro znaky s diakritikou, azbuku, hiraganu, kanji atp. Text kódovaný v UTF-8 zobrazený v 256-znakovém kódování je z větší části čitelný, až na speciální znaky, které se zobrazí jako dva a více "nesmyslných" znaků z použité sady. Text napsaný v UTF-8 obsahující pouze obyčejná písmena zabírá stejné místo jako text zapsaný v nějakém 256-znakovém kódování. Pokud však obsahuje speciální znaky, nelze délku textu odhadnout podle počtu bytů které text zabírá. Práce s UTF-8 a tedy se znaky proměnlivé délky je pomalejší a náročnější - proto zatím UTF-8 podporuje pouze dosti malý počet aplikací.

UTF-8 je však podporováno většinou internetových prohlížečů (i v jejich starších verzích). Stránky kódované v UTF-8 (což je nějaký čas i BioLib) umožňují lépe zobrazovat speciální znaky, které předtím musely být v zdrojovém kódu stránky zapsané jako tzv. HTML entita pomocí svého názvu nebo kódu, např. Å pro zobrazení "A" s kroužkem (Å). Stejně tak databázový systém bez podpory UTF-8 nemohl ukládat více kombinací různých kódování. UTF-8 řeší řadu problémů spojených s 256-znakově kódovanými dokumenty, přináší však samozřejmě problémy jiné, tím hlavním je zatím nedostatečná podpora pro toto kódování ze strany většiny aplikací pracujících s textem.

Poslední změna: 05.01.2008

Možnosti podílení se na BioLibu

Komentáře