我有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]);
}
答案 0 :(得分: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]);
}
修改:对于ushort
s:
StringBuilder words;
for(int i = 0; i < words.Length; i++) {
if (i > 0) words.Append(' ');
words.AppendFormat({0:X4}", ushortArray[i]);
}