2011-12-25 3 views
0

я получаю через запрос HTTP, строка TDesC8 Unicode в Symbian C++, когда я конвертировать его через следующие функции она ничего не меняетSymbian: Как я могу преобразовать арабский Unicode

HTTP обратный запрос:

TBuf8<300>buf; 
buf.Copy(_L8("\u0627\u0646\u0627 \u0645\u0639\u0627\u0643")); 
HBufC* temp = CnvUtfConverter::ConvertToUnicodeFromUtf8L(buf); 

Как преобразовать Unicode TDesC8 в TDes16 в удобочитаемую форму для арабского языка?

Я использую Symbian C++.

Большое спасибо заранее.

ответ

0

линия

_LIT8(KTest, "\u0627\u0646\u0627 \u0645\u0639\u0627\u0643"); 

дает мне

warning: character is out of range 

Как только я изменил его на _LIT16 (KTest2, "\ u0627 \ u0646 \ u0627 \ u0645 \ u0639 \ u0627 \ u0643");

Все составленное в порядке и некоторые арабские символы были показаны без какого-либо преобразования. Поэтому я полагаю, что \ u0627 уже находится в кодировке UCS2, а не UTF8, нет необходимости его преобразовывать.

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