Сравнение шестнадцатеричных значений байтового массива в c # - PullRequest
0 голосов
/ 22 ноября 2011

Я делаю приложение для C # windows. В этом приложении у меня есть один байтовый массив, содержащий шестнадцатеричные значения. Предположим, у меня есть байтовый массив как

 array[0]=4E
 array[1]=50

Здесь я хочу сравнить эти значения как 4E50 для сравнения. Я не хочу сравнивать один байт. Пожалуйста, помогите мне. Заранее спасибо.

Ответы [ 2 ]

6 голосов
/ 22 ноября 2011

Я не уверен, правильно ли я понимаю, вы хотите сравнить 0x4E50 с другим номером?Если это так, вы можете сделать следующее:

(array[0] << 8) + array[1]

Это даст вам 0x4E50.

2 голосов
/ 22 ноября 2011
StringBuilder sb = new StringBuilder();
foreach (byte b in array)
{
       sb.AppendFormat("{0:x2}", b)
}
return sb.ToString();

edit

на основе решения Godwin, но лучше:

(array[0] << 8) | array[1]
...