2015-02-07 4 views
2

Я пытаюсь преобразовать int в hex с форматом 0x12 0x2B и так далее. Есть ли что-то похожее на python: https://docs.python.org/2/library/functions.html#hex для выполнения этого или мне нужно будет обойти это со многими ненужными шагами?Java int to hex с 0x

мне нужно, чтобы получить что-то вроде этого ниже:

int []hexInt={0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x15, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01}; 

Спасибо

+2

Значит, вы хотите ' Строковое представление числа как hex? –

+0

Возможный дубликат [Java Convert integer to hex integer] (http://stackoverflow.com/questions/9321553/java-convert-integer-to-hex-integer) – Aradmey

+0

Мне нужно int as show int [] hexInt = {0x00 и т. д.} – Anak1n

ответ

6

Вы можете объявить String, которая будет равна "0x" + Integer.toHexString(int)

+0

Я сделал это, но когда я хочу разобрать строку в int, он не может разобрать 0x1b для int, который выдает исключение номера в формате, но принимает массив int [] hexInt = {0x1b}. Я запутался. – Anak1n

+0

Сделайте то, что я сказал выше, а затем сохраним его так: Integer.parseInt (num.substring (2), 16); '. Это приведет к удалению '0x' из строки перед разбором. – Aradmey

+1

@ Anak1n Чтобы проанализировать hexString назад, вы десятичный int, вам нужно удалить часть «0x» и предоставить основание, такое как Integer.parseInt («100», 16) »будет обработано на' 256'. – Pshemo

0
public static String intToHexStr(int i){ 
    return "0x"+String.format("%2s", Integer.toHexString(i)).replace(' ', '0'); 
}