0

おはようございます\夕方みんな!

バイト配列を表すような形式の文字列があります"0x0SD30SV8GN48N84GN"...実際にそれをオンにするにはどうすればよいbyte[]ですか?

実際の文字列はかなり長くなります。

これは、変換しようとしているUTF-8形式の文字列を表しますUTF-32...

私が欲しいのはそれを人間の読みやすい文字列に変えることです...それは可能ですか?

PS:シナリオは次のとおりです:私の同僚はvarbinary列に文字列を保存しました... "Select myVarBinaryColumn FROM mytable"を実行し、結果をtxtとして送信しました...人間の読み取り可能な文字列に変換する必要があります...

PS2:文字列は、次の操作の結果として理解できます:Cast('Hello World' as varbinary(max))

4

3 に答える 3

4
byte[] array = Encoding.UTF32.GetBytes(somestring);
于 2012-07-31T21:59:22.217 に答える
1
 string yourstring ="0x0SD30SV8GN48N84GN";
 byte[] array = Encoding.UTF32.GetBytes(yourstring);

このリンクをチェックしてください。また、ここ にスタックオーバーフローに関する別の非常によく似た質問があります

于 2012-07-31T21:58:40.027 に答える
1
string byteStr = input.Substring(2);
byte[] bytes = new byte [ byteStr.Length / 2 ];
for ( int i = 0, j = 0 ; i < byteStr.Length ; i += 2 , j++ )
{
     bytes [ j ] = byte.Parse ( byteStr.Substring ( i , 2 ) , NumberStyles.HexNumber );
}
string str = Encoding.UTF8.GetString ( bytes );
byte[] UTF32Bytes = Encoding.UTF32.GetBytes ( str );
于 2012-07-31T22:26:54.683 に答える