Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/11/2010, 07:14
Rubo83
 
Fecha de Ingreso: noviembre-2010
Mensajes: 4
Antigüedad: 14 años
Puntos: 0
Pregunta Comunicación entre shell, java y codificación

Buenas:

soy nuevo en este foro, a ver si me podeis ayudar: tenía un binario que ejecutaba desde java en mi shell y recogía los datos de la siguiente forma:
...
comando = "@ absoluta binario"+cadena;
// Ejcutamos el comando
Process p = Runtime.getRuntime().exec(comando);System.out.prin tln(comando);
//recogemos salida
BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream()));
...
y me funcionaba a medias, vamos recogía los datos lo único que tenía problemas de codificación entre utf-8 del shell y el iso-8859-1.

Bien, tras esto intenté crearme un script que contuviera este binario, y usaba el comando iconv para transformar mi cadena:
Pasar a latin 1: iconv -f utf-8 -t iso-8859-1
Pasar a utf-8 : iconv -f iso-8859-1 -t utf-8

Una vez echo este script, cambiando el comando, la salida no es recogida entera y no sé por qué, mientras que ejecutándolo en terminal funciona correctamente.Tampoco me funciona la función:
BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream(),"UTF-8")); ni
BufferedReader stdInput = new BufferedReader(new InputStreamReader(p.getInputStream(),"ISO-8859-1"));

Si a alguine se le ocurre la forma de recoger esta salida o qué podría hacer para solucionarlo

Muchas gracias de antemano