运行时exec在后台java中启动应用程序

时间:2014-01-31 17:55:25

标签: java swing

当我运行以下代码时,记事本将在后台而不是前台启动

Runtime rt = Runtime.getRuntime();
try {
    rt.exec("notepad.exe");
} catch (IOException ex) {
}

示例:

从我的java桌面应用程序,我正在尝试启动“notepad.exe”。记事本将在应用程序后面启动。

我希望看到记事本应该出现在前台。

你能帮我解决一下吗?

1 个答案:

答案 0 :(得分:1)

以下将打开文件和可执行文件(.exe):

Java 1.6及以上版本:

try {
   Desktop.getDesktop().open(new File("notepad.exe"));
} catch (Exception e) {
   e.printStackTrace();
}

Java 1.5及更低版本,没有外部库(仅限Windows):

try {
   Runtime.getRuntime().exec("cmd /c \"notepad.exe\"");
} catch (Exception e) {
   e.printStackTrace();
}

我只测试了打开excel文件的1.5解决方案,但没有打开可执行文件,但我猜它可以工作。