KSC5601은 완성형과 조합형의 모든 한글 문자의 표현이 가능한 한글 문자 부호 표준이며 euc-kr과 CP949는 모두 이 KSC5601을 기본으로 한 문자 부호이다.
유닉스계열의 한글 문자 부호인 euc-kr에서는 KSC5601을 그대로 수용하고 있다.
윈도우계열은 한글 문자 부호인 CP949가 완성형 한글의 형태이지만 KSC5601에 의해 조합형으로 만들어지는 한글의 코드까지도 제공하고 있으므로 두 문자 부호의 인코딩 방식은 달라도 같은 코드를 만들어 내게 되어 두 문자 부호는 서로 호환된다. 단, java환경에서는 euc-kr이 KSC5601-87로 사용되어 CP949의 확장 완성형과 호환되지 않을 수도 있으니 주의해야 한다.
Qt가 지원하는 인코딩은 다음과 같다.
Big5
Big5-HKSCS
CP949
EUC-JP
EUC-KR
GB18030
HP-ROMAN8
IBM 850
IBM 866
IBM 874
ISO 2022-JP
ISO 8859-1 to 10
ISO 8859-13 to 16
Iscii-Bng, Dev, Gjr, Knd, Mlm, Ori, Pnj, Tlg, and Tml
KOI8-R
KOI8-U
Macintosh
Shift-JIS
TIS-620
TSCII
UTF-8
UTF-16
UTF-16BE
UTF-16LE
UTF-32
UTF-32BE
UTF-32LE
Windows-1250 to 1258
QTextCodec클래스를 사용하여 유니코드또는 EUC-KR로 변환할 수 있다. 아래는 eucKR로 인코딩 된 한국어 문자열이 있고 이를 유니 코드로 변환 예제 코드이다.
QByteArray encodedString = "...";
QTextCodec *codec = QTextCodec::codecForName("eucKR");
QString string = codec->toUnicode(encodedString);
다음은 유니코드에서 로컬 인코딩으로 문자열을 변환하는 예제이다.
QString string = "...";
QTextCodec *codec = QTextCodec::codecForName("eucKR");
QByteArray encodedString = codec->fromUnicode(string);