Страницы

Поиск по вопросам

четверг, 19 декабря 2019 г.

как конвертировать int в 16 ричную систему?

#java #ascii


Добрый день нужно на сервер отправлять данные ф формате 16 речной системы ASCII.К
примеру -1 как FFFFFFFF соответсвенно -2 как FFFFFFFE

что это за fff-ки?как конверитровать int a =-1 в   FFFFFFFF?

Спасибо за внимание
    


Ответы

Ответ 1



Данный вид записи называется дополнительный код. В Java можно получить такую запись стандартными средствами: Integer.toHexString(1); // 1 Integer.toHexString(2); // 2 Integer.toHexString(-1); // ffffffff Integer.toHexString(-2); // fffffffe Если нужно запись положительных чисел дополнить слева нулями до 8 символов, поможет String.format(): String.format("%8s", Integer.toHexString(123)).replace(' ', '0') // 0000007b

Ответ 2



Самый простой способ int a =-1; System.out.println(Integer.toHexString(a));

Ответ 3



В java так String input = ... // my UTF-16 string StringBuilder sb = new StringBuilder(input.length()); for (int i = 0; i < input.length(); i++) { char ch = input.charAt(i); if (ch <= 0xFF) { sb.append(ch); } } byte[] ascii = sb.toString().getBytes("ISO-8859-1"); // aka LATIN-1

Комментариев нет:

Отправить комментарий