4

このコードはデスクトップ アプリで動作しますが、System.Text がサポートされなくなったため、Windows 8 ストア アプリでは動作しませASCIIEncodingん。

tagdataですbyte array

ASCIIEncoding.ASCII.GetString(tagdata).Trim();

UT8Encoding を使用する必要がありますか? ASCIIバイト配列をテキストに変換したいだけです。

ありがとうございました。

4

1 に答える 1

10

Encoding.ASCIIまず、代わりにどこでも使用することをお勧めします - 後者は、プロパティがクラスのメンバーであるASCIIEncoding.ASCIIことをいくらか暗示していますが、そうではありません。ASCIIASCIIEncoding

バイト配列単なる ASCII テキストであることがわかっている場合はEncoding.UTF8、ASCII に存在するすべての文字が UTF-8 と ASCII の両方で同じ方法で表現されるため、自由に使用できます。

最初に有効性を確認したい場合は、配列内のすべてのバイトが 128 未満であることを確認するだけです。

bool isAscii = tagData.All(b => b < 128);
于 2013-01-30T06:50:52.720 に答える