Hallo,
ich muss in einem Programm, das ich screibe, ab und zu Abfragen über die Konsole machen (wie zum Beispiel den Inhalt eines Verzeichnisses anzeigen mit dir) .
Nun funktioniert das auch ohne Probleme, wenn ich das ganze so mache:
Im String rückgabe wird so der Inhalt des Verzeichnisses gespiehcert. Nun möchte ich aber auch den Inhalt anderer Verzeichnisse ausgeben können, wie zum Besipiel mit "dir C:\" den Inhalt des Verzeichnisses C:. Wenn ich in obigen Programm anstatt "dir" aber "dir C:\" oder auch "dir C:\\" schreibe, dann funktioniert es nicht mehr und ich bekomme einen leeren String rückgabe.
Was mache ich da falsch? Kann mir da irgendeiner helfen?
ich muss in einem Programm, das ich screibe, ab und zu Abfragen über die Konsole machen (wie zum Beispiel den Inhalt eines Verzeichnisses anzeigen mit dir) .
Nun funktioniert das auch ohne Probleme, wenn ich das ganze so mache:
Java:
Process p = cmd.exec("cmd /c \"" + "dir" +"\"" );
p.waitFor();
BufferedReader r = new BufferedReader(new InputStreamReader(p.getInputStream()));
for(;;){
String a = r.readLine();
if(a == null){ //Stream vollständig gelesen
break;
}
rückgabe += a;
rückgabe += "\n";
}
r.close();
Im String rückgabe wird so der Inhalt des Verzeichnisses gespiehcert. Nun möchte ich aber auch den Inhalt anderer Verzeichnisse ausgeben können, wie zum Besipiel mit "dir C:\" den Inhalt des Verzeichnisses C:. Wenn ich in obigen Programm anstatt "dir" aber "dir C:\" oder auch "dir C:\\" schreibe, dann funktioniert es nicht mehr und ich bekomme einen leeren String rückgabe.
Was mache ich da falsch? Kann mir da irgendeiner helfen?