Back to Character Encoding

EUC-KR EUC-KR (Extended Unix Code, Korean) Legacy & Platform-Specific

The historically dominant legacy Korean text encoding — still appears in older Korean-language databases, documents, and software.

What it is

EUC-KR (Extended Unix Code, Korean variant) is a variable-width encoding for Korean text, historically the dominant encoding for Korean-language computing before UTF-8 became standard. Unlike the Shift-JIS/EUC-JP rivalry in Japanese text encoding, EUC-KR faced comparatively less direct platform-driven competition — it was widely used across both Unix and Windows Korean-language contexts, making it a somewhat more consistent legacy choice than its Japanese counterparts.

Byte structure

Byte pattern Length Content
0x00–0x7F 1 byte ASCII-compatible range
Two high-bit-set bytes 2 bytes Hangul syllables (precomposed Korean characters) and Hanja (Chinese characters used in Korean text)

Why your text is garbled (symptom → cause)

Symptom Likely cause
Korean text shows as unrelated symbols/boxes EUC-KR being read as UTF-8 or another encoding, or vice versa
Older Korean-language database exports garbled after modern import Legacy EUC-KR data needing explicit conversion to UTF-8
Some Hangul syllables correct, others garbled or missing EUC-KR's precomposed-syllable coverage doesn't include every theoretically possible Hangul combination — extended variants (like the Windows-specific CP949) added more, so a strict EUC-KR decoder may not cover characters a CP949-aware one would

Compatibility & gotchas

  • Windows extended EUC-KR with CP949 (UHC), adding coverage for additional Hangul syllable combinations that standard EUC-KR doesn't include — text using those extra characters needs a CP949-aware decoder specifically, not strict EUC-KR.
  • Less fragmented than Japanese legacy encodings — EUC-KR didn't face the same intense Unix-vs-Windows split that produced the Shift-JIS/EUC-JP rivalry, making Korean legacy text somewhat more predictable to work with, though the CP949 extension caveat still applies.
  • Largely superseded by UTF-8 in current Korean-language software, though legacy EUC-KR data persists in older systems.

Fixing it

  • Command-line conversion: iconv -f EUC-KR -t UTF-8 input.txt -o output.txt (try CP949 instead if standard EUC-KR fails to decode certain characters)

Comparison

Encoding Key difference from EUC-KR
CP949 (UHC) Windows extension of EUC-KR with additional Hangul syllable coverage
UTF-8 Full Unicode coverage, the modern default

FAQ

What's the difference between EUC-KR and CP949?

CP949 (also called UHC, Unified Hangul Code) is a Windows-specific extension of EUC-KR that adds coverage for additional Hangul syllable combinations not present in the original EUC-KR character set. Text using those extra characters needs CP949-aware decoding.

Is EUC-KR still used today?

Rarely for new development — UTF-8 is standard — but it persists in older Korean-language databases, documents, and legacy enterprise software.

Fun fact

Korean's Hangul writing system is unusual among the world's major scripts in being a featural alphabet deliberately designed (in the 15th century, under King Sejong) with a highly systematic structure — a design quality that made encoding Hangul as precomposed syllable blocks in EUC-KR comparatively more tractable than encoding scripts with less systematic character composition rules.