2016-08-10 93 views
1

我正在开发一个使用C++ Builder 10.1柏林的Android应用程序。在为法国公司创建此应用程序时,我想显示口音。例如,我有一个带有标题文本“Libellé”的字符串网格。所以我写了这个头标题是这样的:C++ Builder:如何在Android应用程序中显示口音?

StringGrid1->ColumnByIndex(0)->Header = "Libellé" 

但是当我运行应用程序,我有一个未知字符(黑色菱形带有问号)。

如何在Android中显示口音?

+0

你试过StringGrid1-> ColumnByIndex(0) - >标题= U8 “Libellé” – pw94

+0

是,但它并没有改变任何东西。 – Dylan

+0

'u8'前缀会将字面值编码为UTF-8,但它仍然是一个'const char []'数组,并且在分配给'Header'时将被视为'char *'指针。 'Header'被声明为'UnicodeString',它不知道'char []'数据是UTF-8,所以不能正确地将非ASCII字符转换为UTF-16。如果使用UTF-8文字,则需要使用'UTF8String'来确保正确的转换,例如:'Header = UTF8String(u8“Libellé”);' –

回答

2

你必须定义字符串文字作为字面(使用wchar_t字符),而不是一个字面(使用char字符)。前缀文字与L,使之广泛:

StringGrid1->ColumnByIndex(0)->Header = L"Libellé"; 
+0

谢谢!就是这样! – Dylan

相关问题