byte[] の最初の数バイトを文字列と比較したい。これどうやってするの?
6960 次
2 に答える
9
それらを正しく比較するには、バイト配列のエンコーディングを知っている必要があります。
たとえば、バイト配列が UTF-8 バイトで構成されていることがわかっている場合、バイト配列から文字列を作成できます。
System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
string s = enc.GetString(originalBytes);
これで、文字列 s を他の文字列と比較できます。
逆に、最初の数バイトだけを比較したい場合は、文字列を UTF8 バイト配列に変換できます。
System.Text.UTF8Encoding enc = new System.Text.UTF8Encoding();
byte[] b = enc.GetBytes(originalString);
これで、バイト配列 b を他のバイト配列と比較できます。
ASCII、Unicode などのエンコード オブジェクトは他にもいくつかあります 。こちらの MSDN ページを参照してください。
于 2009-07-08T03:31:56.307 に答える
1
使用する
byte [] fromString = Encoding.Default.GetBytes("helloworld");
于 2009-07-08T03:39:23.237 に答える