сохранение 08-00-27-DC-4A-9E в переменную в Java, которая является байтом - PullRequest
0 голосов
/ 16 декабря 2010
NetworkInterface ni = NetworkInterface.getByInetAddress(address);
        if (ni != null) {
            byte[] mac = ni.getHardwareAddress();
            if (mac != null) {
                /*
                 * Extract each array of mac address and convert it to hexa with the
                 * following format 08-00-27-DC-4A-9E.
                 */
                for (int i = 0; i < mac.length; i++) {
                    System.out.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : "");
                }
            }
        }

как сохранить выходные данные, подобные этому 08-00-27-DC-4A-9E, в переменную в Java

Ответы [ 2 ]

4 голосов
/ 16 декабря 2010

Что-то вроде:

StringBuilder b = new StringBuilder();
for (int i = 0; i < mac.length; i++) {
    b.append(String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : "");

String s = b.toString();
3 голосов
/ 16 декабря 2010

Чтобы сохранить это значение в переменной вместо его печати, вы можете просто объявить переменную и изменить последнюю строку на:

String s = "";
s += String.format("%02X%s", mac[i], (i < mac.length - 1) ? "-" : "");

В настоящее время вы форматируете его в строку, но затемпечать на стандартный вывод вместо сохранения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...