[java學習筆記]在java中調用其他程序


使用java.lang包下的ProcessBuilder類可以以控制台指令的形式調用其他的進程,實例代碼如下:

@Test
    public void testProcessBuilder() throws IOException {

        //創建ProcessBuilder對象
        ProcessBuilder processBuilder =new ProcessBuilder();
        //設置執行的第三方程序(命令)
//        processBuilder.command("ping","127.0.0.1");
        processBuilder.command("ipconfig");
//        processBuilder.command("java","-jar","f:/xc-service-manage-course.jar");
        //將標准輸入流和錯誤輸入流合並,通過標准輸入流讀取信息就可以拿到第三方程序輸出的錯誤信息、正常信息
        processBuilder.redirectErrorStream(true);

        //啟動一個進程
        Process process = processBuilder.start();
        //由於前邊將錯誤和正常信息合並在輸入流,只讀取輸入流
        InputStream inputStream = process.getInputStream();
        //將字節流轉成字符流
        InputStreamReader reader = new InputStreamReader(inputStream,"gbk");
       //字符緩沖區
        char[] chars = new char[1024];
        int len = -1;
        while((len = reader.read(chars))!=-1){
            String string = new String(chars,0,len);
            System.out.println(string);
        }

        inputStream.close();
        reader.close();

    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM