Integer octal a char?

Iniciado por WHK, 28 Abril 2015, 01:41 AM

0 Miembros y 1 Visitante están viendo este tema.

WHK

Hola, estoy intentando de reparar una conversión pero me está costando un poco :P

Tengo la palabra "hola" el cual convertido a valores octales me da como resultado: 150 157 154 141, ahora necesito transformar esos valores (como cadena de string) a la palabra "hola" nuevamente.

Lo que hice fue separar cada valor en un array y luego lo recorro en un for() asi que el valor ya lo tengo en string, lo convierto en integer y ahora tengo la variable:

int h = 150;

Ahora intento transformarlo a la letra "h" de la siguiente manera:

String h_result = Integer.toString(h, 8); // base 8

Me da como resultado: 226 ???? supuse que tenía que haber retornado un string o en este caso la letra "h" pero me retornó un 226 :-/ ... suponiendo que era un valor decimal procedo a convertirlo a char:

String h_str = (char)Integer.parseInt(h_result);

Y me retorna un carácter raro: "".

Que hice mal?

daryo

#1
acabo de probar esto:
Código (java) [Seleccionar]

int h=150;
Integer ascii = Integer.parseInt(Integer.toString(h), 8);
char num=(char)ascii.intValue();
System.out.println(num);
buenas

WHK

Muchas gracias :D aunque no veop mucha diferencia con lo que hice, algo hice mal y no se que es xd

daryo

bueno sucede que  el proceso esta al revez,
si tenemos el decimal 150 el octal es 226
buenas

WHK

Entonces 150 157 154 141 no es el valor octal de hola? porque el decimal es 104 111 108 97

Edito: ya entendí :-/ muchas gracias :)