0

アプリケーションの出力が.batファイルに表示されるように、Java +コードを適用して.jarを開くCMDを開こうとしています。誰かがそれを行う方法を教えてもらえますか?

これは取得したコードです。ファイルを実行しますが、CMD は表示されません。

btnTest.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent arg0) {
            String Bat = "C:"+File.separatorChar+"Users"+File.separatorChar+"Gebruiker"+File.separatorChar+"AppData"+File.separatorChar+"Local"+File.separatorChar+"Temp"+File.separatorChar+"hexT"+File.separatorChar+"run.bat";
            Runtime rt = Runtime.getRuntime();
            try {
                rt.exec(Bat);
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    });
4

2 に答える 2

0

これを定義します:

FileWriter writer;

次に、try/catch で次の操作を行います。

    try {
        writer = new FileWriter("test.txt");
        Process child = rt.exec(Bat);
        InputStream input = child.getInputStream();
        BufferedInputStream buffer = new BufferedInputStream(input);
        BufferedReader commandResult = new BufferedReader(new InputStreamReader(buffer));
        String line = "";
        try {
            while ((line = commandResult.readLine()) != null) {
         writer.write(line + "\n");              
            }
        writer.close();

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

これにより、出力が行ごとにバッファーとして読み取られ、テキスト ファイルに書き込まれます。

于 2013-09-04T06:12:40.560 に答える