Oi,
Eu estava procurando sobre como fazer comandos do cmd via java, consegui, busquei aqui (Execultar comando cmd via java) e funcionou.
O problema é que o output não exibe no padrão UTF-8 então o texto fica todo bugado.
Esse é o código:
private static void exec(){
Process exec;
BufferedReader input;
String lineOut = new String();
int numberOfOutline = 0;
StringBuffer cmdOut = new StringBuffer();
try {
exec = Runtime.getRuntime().exec("ipconfig");
if ( exec.waitFor() == 0) {
input = new BufferedReader(new InputStreamReader(exec.getInputStream()));
while ((lineOut = input.readLine()) != null){
if (numberOfOutline > 0) {
cmdOut.append("\n");
}
cmdOut.append(lineOut);
numberOfOutline++;
}
System.out.println(cmdOut.toString());
System.out.println("Executado.");
} else {
System.out.println("ERRO");
}
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
Output
Configura‡Æo de IP do Windows
Adaptador de Rede sem Fio ConexÆo de Rede sem Fio:
Sufixo DNS espec¡fico de conexÆo. . . . . . :
Endere‡o IPv6 de link local . . . . . . . . : fe80::85dd:7691:2346:4144%12
Endere‡o IPv4. . . . . . . . . . . . . . . : 192.168.1.3
M scara de Sub-rede . . . . . . . . . . . . : 255.255.255.0
Gateway PadrÆo. . . . . . . . . . . . . . . : 192.168.1.1
Adaptador Ethernet ConexÆo local:
Estado da m¡dia. . . . . . . . . . . . . . : m¡dia desconectada
Sufixo DNS espec¡fico de conexÆo. . . . . . :
Adaptador de t£nel isatap.{FDB8AEFA-5692-4A07-BA47-9374EE81257E}:
Estado da m¡dia. . . . . . . . . . . . . . : m¡dia desconectada
Sufixo DNS espec¡fico de conexÆo. . . . . . :
Adaptador de t£nel isatap.{92BB9C5A-023A-401C-A715-EACE342E8712}:
Estado da m¡dia. . . . . . . . . . . . . . : m¡dia desconectada
Sufixo DNS espec¡fico de conexÆo. . . . . . :
Executado.
Como vocês podem ver o texto que possui acento da problema.
Eu gostaria de saber como eu faço para o texto ficar correto?