Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Problemas con la codificación JAVA (UTF-8......)

Estas en el tema de Problemas con la codificación JAVA (UTF-8......) en el foro de Java en Foros del Web. Hola Amigos, tengo problemas con la codificación de Java y Windows, resulta que ejecuto un comando CMD de Windows, y lo muestro en un txtArea ...
  #1 (permalink)  
Antiguo 24/07/2015, 19:45
 
Fecha de Ingreso: julio-2013
Mensajes: 5
Antigüedad: 10 años, 9 meses
Puntos: 0
Pregunta Problemas con la codificación JAVA (UTF-8......)

Hola Amigos, tengo problemas con la codificación de Java y Windows, resulta que ejecuto un comando CMD de Windows, y lo muestro en un txtArea de Java, pero no sale los acentos (problema de codificación), cualquier solución me servira, gracias,

Codigo Java:
/////////////////////////////////////////////////////////////////////////////////////
Código Java:
Ver original
  1. Runtime cmd = Runtime.getRuntime();
  2. Process proceso;
  3. try {
  4. proceso = cmd.exec("netsh wlan show hostednetwork");
  5. BufferedReader read = new BufferedReader (new InputStreamReader(proceso.getInputStream()));
  6. txtSalida.setText("");
  7. String linea;
  8. while((linea = read.readLine())!=null){
  9. txtSalida.append(linea+"\n");
  10. }
  11. } catch (IOException ex) {
  12. Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
  13. }
///////////////////////////////////////////////////////////////////////////////////////////
Resultado al ejecutar este código:
/////////////////////////////////////////////////////////////////////////////////////////

Configuraci�n de red hospedada
------------------------------
Modo: permitido
Nombre de SSID : "WIFI-GRATIS"
N� m�ximo de clientes : 100
Autenticaci�n : WPA2-Personal
Cifrado : CCMP

Estado de la red hospedada
--------------------------
Estado : Iniciado
BSSID : e0:ca:94:1b:38:cf
Tipo de radio : 802.11n
Canal : 10
N�mero de clientes : 0

  #2 (permalink)  
Antiguo 25/07/2015, 09:09
Avatar de GusGarsaky  
Fecha de Ingreso: febrero-2015
Mensajes: 33
Antigüedad: 9 años, 2 meses
Puntos: 2
Respuesta: Problemas con la codificación JAVA (UTF-8......)

El constructor InputStreamReader utiliza la codificación por defecto (de la JVM). Puedes especificar la codificación por medio del constructor:

Código Java:
Ver original
  1. InputStream bytes = process.getInputStream();
  2. InputStream chars = new InputStreamReader(bytes, "UTF-8");
  3. BufferedReader reader = new BufferedReader(chars);
  #3 (permalink)  
Antiguo 25/07/2015, 10:48
 
Fecha de Ingreso: julio-2013
Mensajes: 5
Antigüedad: 10 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Problemas con la codificación JAVA (UTF-8......)

Gracias, la codificación correcta era "IBM850"

Código Java:
Ver original
  1. InputStream bytes = process.getInputStream();
  2. InputStream chars = new InputStreamReader(bytes, "IBM850");
  3. BufferedReader reader = new BufferedReader(chars);

  #4 (permalink)  
Antiguo 25/07/2015, 11:22
Avatar de GusGarsaky  
Fecha de Ingreso: febrero-2015
Mensajes: 33
Antigüedad: 9 años, 2 meses
Puntos: 2
Respuesta: Problemas con la codificación JAVA (UTF-8......)

A mí me funciona con UTF-8 xD
  #5 (permalink)  
Antiguo 25/07/2015, 13:11
 
Fecha de Ingreso: julio-2013
Mensajes: 5
Antigüedad: 10 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Problemas con la codificación JAVA (UTF-8......)

El código final quedaría así:

Código Java:
Ver original
  1. Runtime cmd = Runtime.getRuntime();
  2. Process proceso;
  3. try {
  4. proceso = cmd.exec("netsh wlan show hostednetwork");
  5. BufferedReader read = new BufferedReader (new InputStreamReader(proceso.getInputStream(),"IBM850"));
  6.  
  7. String linea;
  8. while((linea = read.readLine())!=null){
  9. System.out.println(linea);
  10. }
  11. } catch (IOException ex) {
  12. Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
  13. }

Claro en caso que sea diferente la region, solo se cambia "IBM850" por el correcto.

Etiquetas: string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 19:15.