8

假设我有字节数组。

byte[] a = new byte[] {0x33,0x43,0xFE};

我想将其转换为string.

 string str = convert(a);  

我的 str 应该是这样的:

"33 43 FE"

我怎样才能做到这一点?

4

2 回答 2

15

use bitconverter class

 BitConverter.ToString(Bytes);
于 2013-04-30T13:03:16.523 回答
6

您可以使用以下代码:

byte[] a = new byte[] { 0x33, 0x43, 0xFE };
string str = string.Join(" ", a.Select(b => string.Format("{0:X2} ", b)));

所以convert方法可能是

string convert(byte [] a)
{
    return string.Join(" ", a.Select(b => string.Format("{0:X2} ", b)));
}

用于获取用两个大写十六进制数字表示的每个字节,如果您只需要一个数字,例如X2小于 16 的数字,请使用,如果您想要小写数字,请使用格式。0xA{0:X}{0:x}

于 2013-04-30T13:06:22.507 回答