c++ - 在 Qt 中,如何将 Unicode 代码点 U+1F64B 转换为包含其等效字符“”的 QString?
问题描述
背景:
我正在制作一个哈希,它允许您通过向它提供一个包含其字符的 QString 来查找您在下面看到的描述。
我得到了相关数据的完整列表,如下所示:
QHash<QString, QString> lookupCharacterDescription;
...
lookupCharacterDescription.insert("003F","QUESTION MARK");
lookupCharacterDescription.insert("0040","COMMERCIAL AT");
lookupCharacterDescription.insert("0041","LATIN CAPITAL LETTER A");
lookupCharacterDescription.insert("0042","LATIN CAPITAL LETTER B");
...
lookupCharacterDescription.insert("1F648","SEE-NO-EVIL MONKEY");
lookupCharacterDescription.insert("1F649","HEAR-NO-EVIL MONKEY");
lookupCharacterDescription.insert("1F64A","SPEAK-NO-EVIL MONKEY");
lookupCharacterDescription.insert("1F64B","HAPPY PERSON RAISING ONE HAND");
...
lookupCharacterDescription.insert("FFFD","REPLACEMENT CHARACTER");
lookupCharacterDescription.insert("FFFE","<not a character>");
lookupCharacterDescription.insert("FFFF","<not a character>");
lookupCharacterDescription.insert("FFFFE","<not a character>");
lookupCharacterDescription.insert("FFFFF","<not a character>");
现在显然"1F64B"
需要在这里包裹一些东西。我曾尝试过0x1F64B
使用 QChar 之类的东西,但老实说,我在这里的黑暗中摸索着。我可以让它与拉丁字母等较低的值一起使用,但它在 5 个字符地址时失败。
问题:
- 我该如何分类
1F64B
? - 这被认为是 UTF-32 吗?
- 我可以用什么包装这个值“1F64B”来生成 QString("")?
- 包装是否也适用于较低的值?
解决方案
推荐阅读
- javascript - Node js, 美元符号, html, express
- sql - 无法获取更新语句以将列表框值用作变量
- r - Shiny App 反应性问题和范围问题
- azure-sql-database - 问题/标记/botframework LUIS
- c# - MVC 有问题
- c# - 如何使选项卡控件看起来像在 Visual Studio 中一样
- python - Keras“模型”对象没有属性“名称”
- javascript - 当类存在于 HTML 中时 document.getElementsByClassName 创建空数组
- android - 如何使 NestedScrollView 位于 CollapsingToolbarLayout 下方?
- javascript - 如何将事件从父组件传递到子组件?