Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Cómo obtener un dato de una salida que se tiene a través de un comando de DOS?

Cordial saludo para todos, soy principiante en java, estoy trabajando en un proyecto relacionado con redes, estoy ejecutando el comando ipconfig para poder obtener la direcciòn que tiene un equipo en cierto momento, cuando ejecuto el comando me aparece todo lo que aparece cuando se ejecuta el comando ipconfig, sòlo necesito capturar la ip, es decir, necesito capturar el valor de 192.168.0.2, o la iP que estè en el momento, estoy trabajando bajo el siguiente còdigo:


import java.io.*;

public class ipconfig {

public static void main(String args[]) {

String s = null;

try {

// Determinar el sistema operativo
String so = System.getProperty("os.name");

String comando;

// Comando para Linux
if (so.equals("Linux"))
comando = "ifconfig";

// Comando para Windows
else
comando = "cmd /c ipconfig";

// Se ejecuta el comando
Process p = Runtime.getRuntime().exec(comando);

BufferedReader stdInput = new BufferedReader(new InputStreamReader(
p.getInputStream()));

BufferedReader stdError = new BufferedReader(new InputStreamReader(
p.getErrorStream()));

// Se lee la salida del comando
System.out.println("Ésta es la salida standard del comando:\n");
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}

// Lectura de errores
System.out
.println("Errores a continuación:\n");
while ((s = stdError.readLine()) != null) {
System.out.println(s);
}

System.exit(0);
} catch (IOException e) {
System.out.println("Excepción: ");
e.printStackTrace();
System.exit(-1);
}
}
}

Gracias por su colaboración.

noviembre 5, 2013 | Unregistered CommenterLeonardo Diaz

Puedes obtener la IP interna directamente con código Java:

String ipInterna= InetAddress.getLocalHost().getHostAddress();

noviembre 5, 2013 | Registered Commenterchoces

Me estaba ahogando en un vaso con agua, muchas gracias.

noviembre 5, 2013 | Unregistered CommenterLeonardo Diaz