Durante la scrittura di codice Java , è spesso necessario ricorrere ad altri programmi per le funzioni non implementate dal codice . Spesso , i programmi esterni o applicazioni di essere invocati non sono scritti in Java . A volte, non hanno nemmeno accesso ai loro codici sorgente . Avete bisogno di un modo di invocare altre applicazioni Windows da codice Java . Questo comporta che forniscono input per loro, passare il controllo a loro in ambiente di esecuzione che si aspettano , e avere accesso alla loro uscita . In particolare , è facile invocare l'utilità di compressione /decompressione di file PKZIP da Java su Windows . Cose che ti serviranno
computer che esegue Windows
Java virtual machine e compilatore bytecode installato sul computer
PKZIP installato sul computer
Mostra più istruzioni
1 < p > Importa " java.io. *" e " java.util . * " nel codice Java .
2
Potrai eseguire PKZIP nello stesso contesto di esecuzione in cui l'applicazione Java è in esecuzione, ma come un processo separato . Ciò significa che il codice Java creerà un nuovo processo in esecuzione PKZIP , quindi attendere che il nuovo processo è fatto , quindi riprendere l'esecuzione . Per questo , includere prima
Runtime myruntime = Runtime.getRuntime ( ) .
Nel codice
3
Includi
processo newproc = myruntime.exec ( " \\ " c :/programmi /PKWARE /pkzipc.exe \\ "");
nel codice , al fine di creare e forcella del nuovo processo. La versione di PKZIP progettato per essere invocato da riga di comando si chiama " pkzipc.exe "
4
Attendere PKZIP è fatto includendo
newproc.waitFor ( ) .
5
Se volete passare argomenti a PKZIP , passare un array di stringhe come argomento al metodo Runtime.exec ( ) , come mostrato. La prima stringa deve contenere il percorso e il nome del , l'eseguibile . La seconda e le successive stringhe contengono gli argomenti . Vedere il Manuale PKZIP 6.0 Comando dell'utente di linea per una vasta spiegazione di come si può fare questo con il passaggio di argomenti a PKZIP . Per esempio, diciamo che vogliamo aggiungere il file denominato " summary.doc " per l'archivio già esistente denominato " JanuarySales.zip " . Richiamare Runtime.exec ( ) in questo modo :
String [ ] = { commandwithargs
" \\ " c :/programmi /PKWARE /pkzipc.exe \\ " " ,
< p > " -a JanuarySales.zip " , Stati
" summary.doc "
} ;
myruntime.exec ( commandwithargs ) ;