2012-03-09 11 views
5

Non so se è possibile, ma voglio vedere la risposta del mio file .bat in Java.Ottenere risposta della riga di comando in Java

O un valore booleano di qualcosa che posso vedere che tutto stavano andando bene! E se là dove alcuni errori che posso vedere gli errori in Java.

Grazie

+0

La tua domanda è piuttosto chiaro. Stai parlando di solo stampare sulla console dal tuo programma Java? (usa System.out.println()). Non sono sicuro di dove sia il file .bat. –

+0

Siamo spiacenti, stavo eseguendo il file .bat nella riga di comando di Windows. Ma sto costruendo un programma per gli utenti, quindi non è il modo migliore per eseguire il file bat e gli utenti non ricevono alcun feedback. Spero che ora sia più chiaro! – Gynnad

risposta

2

Date un'occhiata a questi esempi di codice per l'esecuzione di comandi di shell attraverso java: Execute an external program

Gli esempi di codice di cui sopra non utilizzano ProcessBuilder e, pertanto, non si limitano a Java 1.5 e versioni successive

+0

Grazie, c'era un sacco di codice che è utile per me! – Gynnad

5

è necessario eseguire utilizzando il ProcessBuilder (a patto che si esegue Java 1.5 o superiore, se non controlla la risposta di Alex)

Se si esegue:

Process process = new ProcessBuilder("mybat.bat").command(); 

Con il Process è possibile chiamare

InputStream errorStream = process.getErrorStream(); 

Acquisirai l'output dal pipistrello allo stderr.

È inoltre possibile utilizzare getOutputStream() in elaborazione per ottenere sdtout o controllare il codice di ritorno con exitCode().

+0

Il metodo ProcessBuilder richiede una matrice di stringhe, se utilizzo il file bat non funzionerà. – Gynnad

+0

@Gynnad Cosa intendi con il file bat? Sto passando una stringa che descrive il file bat (o il percorso del file bat o se si trova sul percorso del sistema, quindi solo il nome del file bat). È descritto bene nella documentazione di ProcessBuilder (link fornito nella risposta). Se stai usando java 1.5 o superiore, dovresti usare ProcessBuilder. – zode64

Problemi correlati