2013-11-28 3 views
0

Я хочу отобразить строку, которая находится на традиционном китайском языке, в графический интерфейс приложения. В то время как отладка затмения показала эту строку как смесь английских алфавитов и квадратов. Это код Java, который я использовал для его декодирования. Строка «str» я получаю от традиционного китайского потока .mpg.Невозможно декодировать традиционный китайский с помощью java

String TRADITIONAL_CHINESE_ENC = "Big5"; 
byte[] tmp = str.getBytes(); 
String decodedString=new String(tmp,TRADITIONAL_CHINESE_ENC); 

Но результат я получаю в decodedString также смесь алфавитов, квадратные коробки, а некоторые вопросительный знак встраивается в форме коробки алмазов и т.д. Это происходит только в случае традиционного китайского языка. Тот же код отлично подходит для упрощенного китайского, корейского языков и т. Д.

Что может быть неправильным в моем коде при работе с традиционными китайцами? Я использую кодировку UTF-8 для eclipse.

ответ

0

Я не вижу ничего плохого в этом коде.

Согласно this Wikipedia page, существует 3 обычных кодировки для китайских иероглифов: Guobiao, UTF-8 и Big5. Я предлагаю вам попробовать две альтернативы, которые вы не пробовали, и если это не удается, попробуйте перечислить некоторые из менее распространенных альтернатив.

(Также возможно, что реальная проблема заключается в том, что отображаются строки ... но тот факт, что вы показываете упрощенный китайский и корейский правильно говорит о том, что это не проблема.)


Я использую кодировку UTF-8 для затмения.

Я не думаю, что это релевантно. Код, который вы нам показали, не зависит от кодировки по умолчанию либо платформы выполнения, либо среды IDE.

Смежные вопросы