2012-05-30 4 views
1

Мы можем объявить переменные байты, как это, для шестнадцатеричной «88»декларирование байт переменных

Dim bytes = New Byte() { &H88 } 

Моего случай, 88 присваиваются переменным, hexvalue

Как объявить байты с переменное шестнадцатеричное значение?

Dim bytes = New Byte() { &H & hexvalue } 

приведенная выше синтаксическая ошибка.

ответ

5

& H только для определения констант их шестнадцатеричного значением, так & H88 фактически 136.

Вы можете использовать это, если вы хотите, чтобы бросить шестигранный ввод в байты (Long и Int также поддерживают Анализировать, так те, жизнеспособны, а):

Dim q() As Byte = New Byte(){ Byte.Parse(hexvalue, System.Globalization.NumberStyles.HexNumber) } 

И вам даже не нужен ведущий & час, если вы делаете это таким образом.

2

Ответ Kogitsune является очень хорошим, если переменная hexvalue в вашем примере представляет собой строку. Если, однако, hexvalue является числовым типом (Integer, Long и т. Д.), Вы можете просто присвоить значение Byte с CType. Например:

Dim bytes = New Byte() { CType(hexvalue, Byte) } 
Смежные вопросы