程序在java中执行

时间:2015-04-23 00:05:03

标签: java

我正在尝试打开一个exe文件,特别是IndriRunQuery.exe,这是提供Lemur Indri软件包的工具之一。当我使用命令提示符时,我写下以下命令:

IndriRunQuery Queries.txt

这样,编辑Queries.txt中包含的查询(在上面的命令中作为参数传递)就开始了。

然后在下降时间过后,我写下以下内容以保存名为Results.txt的文件中产生的结果:

 IndriRunQuery Queries.txt >Results.txt

我的问题是每次我想编辑包含查询的文件 我需要做同样的步骤。我有20个不同的查询文件要编辑。我试图通过使用java程序找到一种方法,但我无法弄明白。

我使用过这些代码行但它根本不起作用。 任何人都可以帮我解决这个问题吗?

ProcessBuilder builder = new ProcessBuilder("C:\\Program Files\\Indri\\Indri 5.8\\bin\\IndriRunQuery.exe", 
            "C:\\Users\\Πετρής\\Desktop\\TitlesRel.txt");
    builder.start();
    ProcessBuilder builder2 = new ProcessBuilder("C:\\Program Files\\Indri\\Indri 5.8\\bin\\IndriRunQuery.exe", 
            "C:\\Users\\Πετρής\\Desktop\\TitlesRel.txt",">C:\\Users\\Πετρής\\Desktop\\resultsexample3.txt");

    builder2.start();

1 个答案:

答案 0 :(得分:1)

正确的语法如下:

// Create ProcessBuilder.
ProcessBuilder p = new ProcessBuilder();
// Use command "notepad.exe" and open the file.
p.command("notepad.exe", "C:\\file.txt");
p.start();

Process p = Runtime.getRuntime().exec("cmd /c start " + file.getAbsolutePath());