F0 A4 AD A2としてUTF-8で表示される漢字があります。この文字は、ここで説明されていますhttp://en.wikipedia.org/wiki/UTF-8C#:バイトから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);
...私はに出力をリダイレクトしますテキストファイルを開き、notepad.exeでUTF-8エンコーディングを選択して開きます。私は出力を得ることを期待しますが、2つの疑問符(?)を取得しますか?
バイトシーケンスが正しいです。だから私の質問があり、私は
を取得し、出力では
print "\xF0\xA4\xAD\xA2";
:これはPerlでを作品私が得るのですか、なぜ "??" C#の「」の代わりに?
P.S.このキャラクターには特別なものはありません。キャラクター(2,3,4バイト長)には同じものがあります。
を、「出力」で、あなたは、あなたがテキストファイルに出力をリダイレクトし、メモ帳で開く意味ですか? – yoozer8
UTF8エンコーディングを使用してファイルに書き込むことを確認する必要があります。ファイルに書き込むためのコードを投稿できますか? –
ファイルを使用できない特別な理由はありますか?コンソールとUnicodeはやや面倒です。 Oleksandr Pshenychnyy答え(+1)はこの場合あなたを助けるかもしれません... –