字节数组到Word数组到字符串

时间:2010-09-05 04:36:53

标签: c# string bytearray ushort

我有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]);
}

1 个答案:

答案 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]);
}