18/11/2010, 07:14
|
| | Fecha de Ingreso: noviembre-2010
Mensajes: 4
Antigüedad: 14 años, 1 mes Puntos: 0 | |
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 |