1

我有这个byte[]: 00 28 00 60 00 30 10 70 00 22 FF FF

我想将每对字节组合成一个单词:0028 0060 0030 1070 0022 FFFF.

我也想把单词数组变成一个字符串:("0028 0060 0030 1070 0022 FFFF"不使用byte[])。

我修复了 SLaks 代码,它可以工作:

StringBuilder sb = new StringBuilder();
for(var i = 0; i < words.Length; i++)
{
   sb.AppendFormat("{0:X4} ", words[i]);
}
4

1 回答 1

4

像这样:

StringBuilder words;

for(int i = 0; i < bytes.Length; i += 2) {
    if (i > 0) words.Append(' ');
    words.AppendFormat({0:X2}{1:X2}", bytes[i], bytes[i + 1]);
}

编辑:对于ushorts:

StringBuilder words;

for(int i = 0; i < words.Length; i++) {
    if (i > 0) words.Append(' ');
    words.AppendFormat({0:X4}", ushortArray[i]);
}
于 2010-09-05T04:40:58.717 回答