Ola, tenho um programa que deveria pegar a variavel %SystemRoot% do windows, mas para pegar essa variavel eu deveria dar um echo %SystemRoot% e jogar o retorno em uma variavel, mas o java nao acha o comando echo do windows. segue abaixo o programa, e agradeco a quem poder me ajudar.
package envios;
import java.io.*;
public class Envio{
public Envio() throws IOException {
Runtime run = Runtime.getRuntime();
String dir = “D:\WINDOWS”;//essa variavel deve receber o SystemRoot
Process procDir = run.exec(“echo %SystemRoot%”);
new Processo(procDir.getInputStream()).start();
Process proc = run.exec(“ftp -n -i -s:”+dir+"\Temp\dados.dat 10.1.1.1");
new Processo(proc.getInputStream()).start();
}
public static void main(String[] args)
throws IOException, InterruptedException {
new Envio();
}
class Processo extends Thread {
InputStream stream = null;
public Processo(InputStream stream) {
this.stream = stream;
}
private void parseStream()
throws IOException {
InputStreamReader isr = new InputStreamReader(stream);
BufferedReader br = new BufferedReader(isr);
String line = null;
while ((line = br.readLine()) != null) {
System.out.println(line);
}
}
public void run() {
try {
parseStream();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
Att,
Tudenski