不明なプラットフォームで他の人が作成した RTF ファイルで作業していますが、openoffice で開いた文字セットに関係なく、一部の文字を除いてすべてが正しく解釈されます。解釈後の平文は次のとおりです。
「Même taille que la Terre, même masse, même âgec Vénus a souvent été qualifiée de sœur de la Terre.」
元の ANSI 段落は次のとおりです。
"M\u234\'3fme taille que la Terre, m\u234\'3fme masse, m\u234\'3fme \u226\'3fge\uc2 \u61825\'ff\'81\uc1 c V\u233\'3fnus a souvent \u233\'3ft\u233\'3f qualifi\u233\'3fe de s\u339\'3fur de la Terre."
拡大するには:
"âgec Vénus" は "\u226\'3fge\uc2 \u61825\'ff\'81\uc1 c V\u233\'3fnus" になります。
そして最後に、私たちが思いついたこと:
"\uc2\u61825\'ff\'81\uc1c"
ここ\uc2
で\uc1
は、4 バイトと 2 バイトの Unicode エンコーディングを行ったり来たりしています。
\u61825
不明な Unicode 文字です。実際、RTF 仕様によれば、2^15 より大きい UTF 文字はすべて否定形式で記述する必要があります。ANSI 文字を使用した否定形は、"-" (マイナス) 記号をメモ帳に表示する必要があります。ここで、最初に rtf ファイルを作成した人が使用した RTF ライターがどのようにそれを実行できたのか、私には理解できないことがあります。仕様、特定のバージョン、文字セットで何かを見逃したのかもしれませんが、わかりません。そのままの場合、61825 は Unicode テーブルのプライベート領域にある F181 に対応します。
次に、\'ff\'81
「特定の文字」グループ全体の ANSI 同等フィールド (その構造は通常\uN\'XX
) を使用して、4 バイト長のものをコーディングします。そしてここでも、私は見つけることができませんでした:
コード ページ (Windows-1252、ISO-8859-1、その他?) は何を参照しています
\uN\'XX
か?そのため、あまり情報が得られませんでした)XX
3F
\'FF
(エスケープ シーケンス内の制御文字のように見えます!) は何を表し、その理由は何\'81
ですか?\u61825
F181
FF81
最後に、翻訳されたテキスト (フランス語) が私たちに期待させるのは、「:」 (セミコロン) です: 「地球と同じサイズ、同じ質量、同じ年齢: 金星はしばしば地球の姉妹として認定されています」. それは理にかなっています。しかし、セミコロンのこのような複雑なコードを想像できる rtf ライターがいるでしょうか?
もう一度、1 時間の検索の後、私はあなたの仲間に質問を開きます: 誰かがこれを認識し、どの制御ワード エンコーディングが使用されているかを教えてくれますか? ビッグ エンディアン/リトル エンディアン/2 の補数の混乱が 61825 でここにありますか?の代わりに\'ff\'81
アセンブルされると同じで、それ自体はそのままでは何も意味しません...ここで私の質問は、奇妙なRTFエンコーディングから完全な元のテキストを見つける方法があるかどうかを知ることだけです!FF81
F181