1

如何将仅由一个 unicode 组成的 QString 转换为 QChar 和 char?

我有这个角色cedilla。 http://graphemica.com/%C3%A7

我对 QChar 还没有任何想法,但我尝试使用此代码将 QString 转换为 char。

char c[2];
strcpy(c, keyItem.contentText.toUtf8().constData());
printf("Character is: %c\n", c[0]);

但它显示了这个字符。</p>

我的“keyItem”是一个类,虽然只有一个字符,但 contentText 返回一个 QString。当我尝试返回通常的信件时,我可以正确地阅读它们。

更新:我正在尝试创建一个键盘,我必须获取 QString 的 int 值,这就是为什么我必须先将其转换为 char 的原因。

我将使用它来创建键盘。

send(int(c[0]);
void send(int key){ 
    QWSServer::sendKeyEvent(key, key, 0, true, false);
}
4

1 回答 1

4

不管怎么说,还是要谢谢你。我现在找到了解决方案。

QChar c;
c = keyItem.contentText[0];
send(c.unicode());

:)

于 2014-11-20T02:08:28.747 回答