Título: Problema al convertir de binario a hexadecimal (MAC) Publicado por: xopito en 10 Marzo 2011, 12:26 pm Hola,
bueno, explico mi programa. Para introducir, estoy usando la librería JPcap para manejar los paquetes y demás cosas, Primero meto en byte b = tarjetas.mac_address[r]; que sería la tarjeta de red en cuestión y la MAC en código binario. Para convertirlo, lo paso a hexadecimal así: macad[r]=(Integer.toHexString(b & 0xff)); Lo malo, es que, por ejemplo, la MAC de mi portátil empieza por "00:" siendo una cadena de bits tal que "0000 0000", y al convertirlo a hexadecimal me queda "0:" ¿cuál sería la forma de hacer que me imprimiese los dos 0? gracias, Título: Re: Problema al convertir de binario a hexadecimal (MAC) Publicado por: egyware en 10 Marzo 2011, 20:25 pm Nunca hecho algo asi en Java, pero en C/C++
uso Código El cual me imprime en formato de puntero (igual es muy util) en java podrias hacer lo mismo pero con esto Código No se si exista formato "p" en java podrias intentar usar el "x" pero ese solo muestra un 0 en vez de 2. Saludos!! Título: Re: Problema al convertir de binario a hexadecimal (MAC) Publicado por: xopito en 26 Marzo 2011, 11:43 am gracias, de todas formas, ya encontré un método que al parecer va mejor
System.out.print(" dir origen: "); for (int i = 0; i < 6; i++) { System.out.format("%02X%s", macOrigen, (i < macOrigen.length - 1) ? "-" : ""); } |