亲爱的大家我想用Java执行EXE文件,但无法正确执行。最初,在DOS命令提示符下,我的命令是这样的:C:>\crf_test.exe model <inputfile.txt> outputfile.txt注意:输入文件名必须放在方括号中。在DOS窗口中运行它总是给我很好的效果。当我希望我的java程序调用上述命令时,我会这样:Process p = Runtime.getRuntime().exec("crf_test.exe model <inputfile.txt> outputfile.txt");但是,此命令的输出是“没有这样的文件或目录:”我的来宾Java不喜欢DOS命令中的括号。我也删除了,但是exe文件不接受。那么,现在我该如何解决这个问题呢?请给我解决办法非常感谢 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 尖括号是重定向操作符: outputfile.txt导致将输出写入outputfile.txt而不是屏幕。该功能由外壳提供,但是在使用Java运行时调用程序时,外壳不存在。通过外壳调用,如下所示:Runtime.getRuntime().exec("cmd /c crf_test.exe model <inputfile.txt> outputfile.txt");...或使用Java提供的功能重定向输入和输出;参见例如this question。 (adsbygoogle = window.adsbygoogle || []).push({});