Runtime.getRuntime.execute(); を使用して cmd コマンドを実行するスイング アプリケーションを開発しています。BufferReaderを使用してコマンドの出力を読み取ります。今私が欲しいのは、ダイアログ内のテキストを変更して(JTextPaneを使用して)出力を表示したい、または前提条件をロードするために他のIDEのEclipseを起動しているときに見ることができるように、コマンドの出力でテキストエリアに文字列を追加したいです。
私は JDialog クラスのサブクラスを作成しようとしましたが、それは私が望むことをしていません。
私のコード:
Process p = Runtime.getRuntime().exec(commandToBeExecuted);
BufferedReader in = new BufferedReader(newInputStreamReader(p.getInputStream()));
String line = null;
MessageDialog myDialog=new MessageDialog(UserInterface.this);
while ((line = in.readLine()) != null) {
System.out.println(line);
myDialog.setText(line);
myDialog.setVisible(true);
myDialog.setLocationRelativeTo(UserInterface.this);
}
} catch (Exception ex) {
Logger.getLogger(UserInterface.class.getName()).log(Level.SEVERE, null, ex);
errorGlobal.setText("Some Exception Occured in update "+ex.getMessage());
System.out.println("Exception occured " + ex.getMessage());
}
私がやりたいことをすることは可能ですか?これを達成するための最良の方法は何ですか?