6

SMS メッセージの送信に問題があります。「\uFDE8」のような文字列を作成しました (65000 です)。元に戻すと 65000 になります。問題ないようです。

しかし、この文字列を使用して SMS を送信し、メッセージを受信すると、この文字が "\uFFFD" (65533) に置き換えられます。この文字は「置換文字」と呼ばれます。

なぜ私のキャラクターが入れ替わったのですか?

//編集私の解決策は、文字列の各文字を7ビットに変換してから送信することです。gms のアルファベットは ascii とは異なることに注意してください (一部の文字は別の文字に置き換える必要があります)。幸運を!

4

1 に答える 1

5

Unicode テーブルによると、U+FDE8は有効なコードポイントではありません。

ご想像のとおり、無効な文字はプロバイダーの SMS システムによって� に置き換えられます。これは、それ自体は有効な Unicode 文字ですが、元の文字を正しく表現できないことを示すためにのみ存在します。U+FFFD REPLACEMENT CHARACTER

于 2013-01-19T09:14:03.977 に答える