背景:
我正在制作一个哈希,它允许您通过向它提供一个包含其字符的 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("")?
- 包装是否也适用于较低的值?