1

ここでは、Java プログラムからバット ファイルを実行しようとしています。c:\File\Create.bat からバット ファイルを実行したいのですが、コードを実行すると、Java プログラムがある d:\NetBeansPeoject\test.java が検索されます。なぜですか??

ここにコード:

try
{
    ProcessBuilder pb = new ProcessBuilder("c:\\File\\Create.bat");
   Process p = pb.start();

}
catch (IOException e)
 {
e.printStackTrace();
}
    }
}
4

1 に答える 1

3

ProcessBuilderでは、 start() を呼び出してコマンドを実行します。start() を呼び出す前に、プロセスの作成方法を操作できます。プロセスを別のディレクトリで開始する場合は、ファイルをコマンド ライン引数として渡しません。代わりに、File を directory() メソッドに渡して、プロセス ビルダーの作業ディレクトリを設定します。

   public ProcessBuilder directory(File directory)
于 2011-02-20T20:00:47.283 に答える