0

通常は英語ではない文字列文字の 2 バイトの WORD Hex 値を返そうとしています。基本的に Unicode 表現。vb.net の使用

元:

FF5F = ((

FF06 = &

これらは Unicode 標準 6.2 で表されます。このセットに表示されている外国語の文字の一部を表示できません。

したがって、文字列文字をこの 2 バイト値に変換したいと思います。これを行うための関数を.netで見つけることができませんでした。

コードは現在、文字列の文字列を循環する for ループにすぎないため、サンプルの進行はありません。

AscW 関数と ChrW 関数を試しましたが、2 バイトの値が返されません。ASCII は 255 以上では信頼できないようです。

必要に応じて、テスト対象の可能性のある言語を分離して、比較で 1 つの言語のみが考慮されるようにすることもできますが、英語の文字は常に可能です。

任意のガイダンスをいただければ幸いです。

4

2 に答える 2

0

文字列をバイト配列に変換できると思います。これは、C# では次のようになります。

static byte[] GetBytes(string str)
{
    byte[] bytes = new byte[str.Length * sizeof(char)];
    System.Buffer.BlockCopy(str.ToCharArray(), 0, bytes, 0, bytes.Length);
    return bytes;
}

そこから、配列から最初の 2 バイトを取得するだけで、それらを取得できます。

それらを画面に表示したい場合は、おそらく16進数またはそのような表示可能な形式に変換する必要があると思います。

ここの質問からこれを盗みました。

于 2013-02-20T16:40:50.063 に答える