早上好\大家晚上!
我有一个像"0x0SD30SV8GN48N84GN"
这样的格式的字符串,它代表一个字节数组......我怎样才能在实际的byte[]
上转换它?
实际字符串相当长。
它表示UTF-8格式的字符串,我试图转换为UTF-32
...
我想要的是把它变成人类可读的字符串......这可能吗?
PS:场景是:我的同事在varbinary列中存储了一个字符串...执行了“选择myVarBinaryColumn FROM mytable”并将结果作为txt发送给我...我需要转换为人类可读字符串..PS2:字符串可以理解为以下操作的结果:Cast('Hello World'为varbinary(max))
答案 0 :(得分:4)
byte[] array = Encoding.UTF32.GetBytes(somestring);
答案 1 :(得分:1)
string yourstring ="0x0SD30SV8GN48N84GN";
byte[] array = Encoding.UTF32.GetBytes(yourstring);
结帐this link. 另外,stackoverflow here
上有另一个非常相似的问题答案 2 :(得分: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 );