我可以在Mac OS或Windows上打开终端窗口或命令提示符。我想使用我的java将字符串发送到该终端或cmd窗口。
String in = " -i " + "\"" + tfIntdta.getText() + "\"";
String rst = " - r " + "\"" + tfRstplt.getText() + "\"";
String out = " -o " + "\"" + tfOutdta.getText() + "\"";
String strip = " -s" + "\"" + tfStpdta.getText() + "\"";
String guistring = "-n gui";
String wd = "\"" + System.getProperty("user.dir");
String osver = System.getProperty("os.name");
String app = "";
if (osver.contains("Mac")){
app = wd + "/relap5.x\"";
} else if (osver.contains("Windows")){
app = "\\relap5.exe";
} else if (osver.contains("linux")) {
app = "/relap5.x";
}
String run = app + in + rst + out;
所以字符串看起来像这样。 " / Users / brianallison / Documents / Java / RELAP5 GUI / issrs / relap5.x" -i"" - r"" -o""
我希望上面的行显示在终端或cmd窗口上并执行。
答案 0 :(得分:1)
将您的命令和参数放在一个数组中:
String[] command = {
"/Users/brianallison/Documents/Java/RELAP5 GUI/issrs/relap5.x",
"-i", "Choose your input file",
"-r", "",
"-o", ""
};
然后使用Runtime#exec(String[] cmdarray)
执行:
Runtime.getRuntime().exec(command);