Массив байтов в слово Массив в строку - PullRequest
1 голос
/ 05 сентября 2010

У меня есть 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 Ответ

4 голосов
/ 05 сентября 2010

Как это:

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 с:

StringBuilder words;

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