答案1
您所发送的文本要么是由疯子编码的,要么是由完全误解 Unicode 的人编码的。
这是我复制文本第一行时在剪贴板中看到的内容:
例如,字符 D835 和 DE4F 是 Unicode 代理 定义为:
UCS 使用代理来处理初始基本多文种平面之外的字符,而无需使用超过 16 位的字节表示。[10] 有 1024 个“高”代理(D800–DBFF)和 1024 个“低”代理(DC00–DFFF)。通过组合一对代理,可以处理所有其他平面中的剩余字符(其他 16 个平面中的 1024 × 1024 = 1048576 个代码点)。在 UTF-16 中,它们必须始终成对出现,即高代理后跟低代理,因此使用 32 位来表示一个代码点。
代理对表示代码点
其中 H 和 L 分别是高代理和低代理的数值。
简而言之,那个疯狂的发送者将每个 16 位 Unicode 字符编码为两个 16 位代理字符,它们合在一起形成一个字符!
我真的不怪 Telegram 无法显示文本。任何程序要想正确显示它,都需要 Unicode 的出色实现。
答案2
这些字符不是普通字母,而是来自 Unicode 的不同块。
粗体斜体文本(如