gpt4 book ai didi

java - 如何运行.exe文件?

转载 作者:行者123 更新时间:2023-12-01 04:32:34 24 4
gpt4 key购买 nike

其实我在工作Wolfram Mathematica ,我们没有任何运行外部程序的功能,所以我想用Java技术来做这个App。

在我的组织中,C开发团队开发了一个应用程序并在 .exe 中提供给我们格式。知道我想运行 .exe文件来自Java .

我有一个.exe名称为ThMapInfratab1-2.exeC:/Users/Infratab Bangalore/Desktop/Rod's目录。

一旦我们运行.exe文件,我自动获取 .txt文件作为输入名称 TherInput.txt来自同一目录 ( C:/Users/Infratab Bangalore/Desktop/Rod's )

对于我的构造,我运行 ThMapInfratab1-2.exe按以下方式使用命令提示符手动创建文件。效果很好。

 C:\Users\Infratab Bangalore\Desktop\Rod's>ThMapInfratab1-2.exe

最后.exe文件导出t .txt文件作为输出到同一目录( C:/Users/Infratab Bangalore/Desktop/Rod's )。

同样的事情,我想使用 Java 来做.你能用我的目录解释一下吗?

为此,我编写了以下代码,但它不起作用。

import java.io.IOException;
public class ProcessBuilderSample {

public static void main(String args[]) throws IOException {
Process process = new ProcessBuilder(
"C:\\Users\\Infratab bangalore\\Desktop\\Rod's\\ThMapInfratab1-2.exe")
.start();
}
}

如果有人知道,请推荐我。

谢谢。

.

最佳答案

您需要执行返回 Process 实例的 Runtime 的 exec() 方法或使用 ProcessBuilder类方法。

Runtime runtime = Runtime.getRuntime();
Process proc = runtime.exec("C:\\Users\\Infratab Bangalore\\Desktop\\Rod's\\ThMapInfratab1-2.exe");

您可以使用 ProcessBuilder 作为

 ProcessBuilder pb = new ProcessBuilder("myCommand", "myArg1", "myArg2");
Map<String, String> env = pb.environment();
env.put("VAR1", "myValue");
env.remove("OTHERVAR");
env.put("VAR2", env.get("VAR1") + "suffix");
pb.directory(new File("myDir"));
File log = new File("log");
pb.redirectErrorStream(true);
pb.redirectOutput(Redirect.appendTo(log));
Process p = pb.start();
assert pb.redirectInput() == Redirect.PIPE;
assert pb.redirectOutput().file() == log;
assert p.getInputStream().read() == -1;

关于java - 如何运行.exe文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17826732/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com