如何获取 GUI 中指定的多个参数以在外部 .exe 文件(GLPK 求解器)中运行?
这可能吗?
您当前的代码:
Process process = new ProcessBuilder("C:/Users/Tyler/Desktop/glpk-4.47/w64/glpsol.exe","-m NetFlow2stage.mod -o NetFlow2stageJAVA.sol -d NetworkData2.dat").start();
System.out.println("...");
String content = "out!";
几乎是正确的——几乎。参数应该是 ProcessBuilder 构造函数的单独参数。尝试这个:
Process process = new ProcessBuilder("C:/Users/Tyler/Desktop/glpk-4.47/w64/glpsol.exe","-m NetFlow2stage.mod", "-o NetFlow2stageJAVA.sol", "-d NetworkData2.dat").start();
System.out.println("...");
String content = "out!";
你的主要方法:
public static void main(String [] args){
包含获取参数所需的一切,因为它们将被分配给args
数组。
如果或是否需要使用 java 来执行 exe?这可以通过使用这个来完成:
String[] cmd = { "myProgram.exe", "-o=This is an option" };
Runtime.getRuntime().exec(cmd);
编辑
试试这个作为路径:
C:\\Users\\Tyler\\Desktop\\glpk-4.47\\w64\\glpsol.exe
看Runtime.getRuntime().exec(String func)
功能。您可以执行外部程序以及向其传递参数。
例如:
Runtime.getRuntime().exec("notepad.exe JavaProgram.java")
将notepad.exe
在打开文件的同时执行JavaProgram.java
,如果文件不存在则创建文件(保存时)