Java memanggil perintah CMD dan mengeluarkan informasi tampilan:
paket com.anxin.cmd.test; impor java.io.bufferedReader; impor java.io.inputStreamReader; perintah kelas publik {public static void main (string [] args) {coba {runtime rt = runtime.getRuntime (); Process pr = rt.exec ("CMD /C dir"); // cmd/c calc // proses pr = rt.exec ("d: //xunlei//project.aspx"); Input BufferedReader = BufferedReader baru (inputStreamReader baru (pr.getInputStream (), "gbk")); Garis string = null; while ((line = input.readline ())! = null) {System.out.println (line); } int exitval = pr.waitfor (); System.out.println ("Keluar dengan Kode Kesalahan" + ExitVal); } catch (Exception e) {System.out.println (e.toString ()); e.printstacktrace (); }}}Ada tiga cara Java memulai aplikasi asli EXE:
Metode pertama: Gunakan metode CMD
/ ** * Jalankan perintah cmd * * @param command * @throws ioException */ public static string executecmd (perintah string) melempar ioException {log.info ("Execute command:" + command); Runtime runtime = runtime.getRuntime (); Proses proses = runtime.exec ("cmd /c" + perintah); BufferedReader BR = BufferedReader baru (InputStreamReader baru (Process.getInputStream (), "UTF-8")); Garis string = null; StringBuilder build = New StringBuilder (); while ((line = br.readline ())! = null) {log.info (line); build.Append (line); } return build.toString (); } executecmd (Mulai "axadwebbrowser" "d: igaxadsbrowser/axadwebbrowser.exe"); Metode kedua: Gunakan ProcessBuilder untuk memanggil metode CMD
/ ** * Mulai aplikasi * * @param ProgramName * @return * @throws IoException */ public static void startProgram (string programpath) melempar ioException {log.info ("Mulai aplikasi:" + programpath); if (stringutils.isnotblank (programpath)) {coba {string programname = programpath.substring (programpath.LastIndexOf ("/") + 1, programpath.LastIndexOf (".")); Daftar <String> Daftar = ArrayList baru <string> (); list.add ("cmd.exe"); list.add ("/c"); list.add ("start"); list.add ("/" " + ProgramName +"/""); list.add ("/" " + programpath +"/""); ProcessBuilder pbuilder = ProcessBuilder baru (daftar); pbuilder.start (); } catch (Exception e) {E.PrintStackTrace (); LOG.Error ("Aplikasi:" + Programpath + "tidak ada!"); }}} Cara ketiga: Gunakan desktop untuk memulai aplikasi
/ ** * Mulai aplikasi * * @param ProgramName * @return * @throws IoException */ public static void startProgram (string programpath) melempar ioException {log.info ("Mulai aplikasi:" + programpath); if (stringutils.isnotblank (programpath)) {coba {desktop.getDesktop (). buka (file baru (programpath)); } catch (Exception e) {E.PrintStackTrace (); LOG.Error ("Aplikasi:" + Programpath + "tidak ada!"); }}}