qt - 从 QChar 中检索 Unicode 代码点 > U+FFFF

标签 qt unicode astral-plane codepoint qchar

我有一个应用程序应该处理各种字符,并在某些时候显示有关它们的信息。我在 QChar、QString 等中使用 Qt 及其固有的 Unicode 支持。

现在我需要 QChar 的代码点以便在 http://unicode.org/Public/UNIDATA/UnicodeData.txt 中查找一些数据,但 QChar 的 unicode() 方法只返回一个 ushort(无符号短整型),通常是 0 到 65535(或 0xFFFF)之间的数字。有代码点 > 0xFFFF 的字符,那么我如何获得这些字符?是否有一些我遗漏的技巧,或者 Qt/QChar 目前不支持?

最佳答案

每个QChar是 UTF-16 值,而不是完整的 Unicode 代码点。因此,非 BMP 字符由两个 QChar 组成。代理对。

关于qt - 从 QChar 中检索 Unicode 代码点 > U+FFFF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6972883/

相关文章:

qt - 如何在 QML 中模拟鼠标点击?

c++ - 使用 MinGW 的 c++ unicode 程序中的错误

qt - qmake 项目中的 CMake 项目

c++ - Qt OpenGL 纹理为黑色

swift - 如何在 Swift 中生成一个随机的 unicode 字符?

c - 尝试读取带有表情符号的文本文件并打印出来

c++ - 如何输入 4 字节的 UTF-8 字符?

unicode - 如何像 Rebol 2 一样在 Rebol 3 字符串中使用 U+FFFF 以上的 Unicode 代码点?

Java charAt 用于具有两个代码单元的字符

c++ - 如何在 QML 中创建 Q_GADGET 结构的新实例?