F0 A4 AD A2 として UTF-8 で表示される漢字があります。この文字については、http: //en.wikipedia.org/wiki/UTF-8で説明されています。
U+24B62 F0 A4 AD A2
このコードをC#で実行すると...
byte[] data = { 0xF0, 0xA4, 0xAD, 0xA2 };
string abc = Encoding.UTF8.GetString(data);
Console.WriteLine("Test: description = {0}", abc);
... 出力をテキスト ファイルにリダイレクトし、UTF-8 エンコーディングを選択して notepad.exe で開きます。出力が得られると思いますが、2 つの疑問符 (??) が表示されます。
バイトシーケンスは正しいです。Perlで動作します:
print "\xF0\xA4\xAD\xA2";
出力では、私は得る
だから私の質問は:なぜ私は "??" を得るのですか? C#の "" の代わりに?
PS この文字には特別なことはありません: どの文字 (2、3、または 4 バイト長) でも同じ結果が得られました。