6

我在发送 SMS 消息时遇到问题。我创建了一个带有“\uFDE8”之类的字符的字符串(它是 65000)。当我将其转换回来时,我得到 65000。看起来还可以。

但是,当我使用此字符串发送 SMS 并接收消息时,我将此字符替换为“\uFFFD”(65533)。该字符称为“替换字符”。

为什么我的角色被替换了?

//edit 我的解决方案是将字符串的每个字符转换为7位,然后发送。您必须注意到 gms 字母表与 ascii 不同(某些字符需要替换为另一个字符)。祝你好运!

4

1 回答 1

5

根据 Unicode 表,U+FDE8不是有效的代码点。

如您所料,任何无效字符都会被您的提供商的 SMS 系统替换为�,它本身是一个有效的 Unicode 字符,但仅用于表明无法正确表示原始字符。U+FFFD REPLACEMENT CHARACTER

于 2013-01-19T09:14:03.977 回答