Перекодировать текст из EUC-KR ↓
Корейская письменность хангыль считается одной из самых логичных в мире. Она состоит из 24 основных букв, которые объединяются в слоговые блоки. Каждый блок выглядит как отдельный знак, похожий на иероглиф, но состоит из двух, трёх или четырёх букв. Всего из букв хангыля можно составить 11 172 слоговых блока. Для компьютеров это представляло особую задачу: хранить ли текст буквами или готовыми слогами? Кодировка EUC-KR выбрала второй путь и стала основной кодировкой корейского языка.
EUC-KR основана на южнокорейском стандарте KS X 1001, ранее известном как KS C 5601. Символы ASCII в ней записываются одним байтом, а корейские слоги, иероглифы ханча, японская азбука, кириллица, греческий алфавит и различные символы занимают два байта. Как и в EUC-JP, оба байта многобайтового символа больше 127, поэтому они никогда не совпадают с символами ASCII.
Главным недостатком стандарта стало ограниченное количество слогов. Из 11 172 возможных блоков хангыля в KS X 1001 вошло только 2350 наиболее употребительных. Остальные слоги нельзя было записать в EUC-KR. Для обычных текстов этого хватало, но в именах, диалектных словах, звукоподражаниях и современном сленге постоянно встречались слоги, которых в таблице не было. Самым известным примером стал роман "똠방각하", название которого невозможно было записать на компьютере, поскольку слога "똠" не было в стандарте.
Microsoft решила эту проблему в своей кодовой странице 949, известной также как Unified Hangul Code. Она полностью совместима с EUC-KR, но добавляет все оставшиеся 8822 слога, используя байты, которые в EUC-KR не задействованы. Многие программы и браузеры фактически обрабатывают EUC-KR как кодовую страницу 949, и метка "euc-kr" на сайтах обычно означает именно её.
Ошибки при чтении корейского текста в другой кодировке выглядят так же, как и для других двухбайтовых кодировок. Приветствие "안녕하세요", записанное в EUC-KR и открытое как Windows-1252, превращается в "¾È³çÇϼ¼¿ä", а при чтении в Windows-1251 в "ѕИізЗПјјїд". Если же текст в UTF-8 прочитать как EUC-KR, получатся случайные корейские слоги и иероглифы вперемешку со знаками замены.
В EUC-KR есть и кириллица. Русские буквы записываются двумя байтами с одинаковым первым байтом, и русский текст, набранный в корейской программе, при чтении в европейской кодировке превращается в повторяющиеся пары символов. Это иногда встречается в документах, созданных в корейских программах.
Сегодня корейские сайты работают в UTF-8, где есть все 11 172 слога хангыля. Однако EUC-KR и кодовая страница 949 встречаются в старых документах, играх, базах данных и программах. Если корейский текст превратился в набор латинских букв с акцентами или кириллицу, укажите EUC-KR исходной кодировкой и преобразуйте текст в UTF-8.