【问题标题】:Open file with default program using java 1.4使用 java 1.4 使用默认程序打开文件
【发布时间】:2012-06-19 17:43:30
【问题描述】:

Desktop.getDestop().open(File) 启动关联的应用程序以打开文件。

Desktop 类从 Java 1.6 开始可用 - http://docs.oracle.com/javase/6/docs/api/java/awt/Desktop.html

如何使用 1.4 Java 版本做同样的事情?

【问题讨论】:

    标签: java desktop-application desktop


    【解决方案1】:

    您可以使用以下命令通过默认应用程序打开文件:

        /* build up command and launch */
        String command = "";
        String file = "FILE IN HERE";
        if (isLinux()) {
            command = "xdg-open " + file;
        } else if (isWindows()) {
            command = "cmd /C start " + file;
        } else
            return;
    
        try {
            Runtime.getRuntime().exec(command);
        } catch (Exception ex) {
            ex.printStackTrace();
        }
    

    自 1.0 起可用:Runtime

    【讨论】:

    • 您可以使用Apache commons-exec's OS class在运行时确定主机操作系统。
    • 在 Windows 上,如果我按照您的建议使用 cmd /C start 启动可执行文件,我不会获得有关它是否成功启动的任何信息。你知道有什么解决方法吗?
    • @Zoltán 您可以使用here 的答案之一阅读输出。
    • @Zoltán 或使用this
    • 我的意思是——如果我使用cmd /C start 命令,我会失去进程的句柄,因为它会启动一个命令窗口,然后启动我的目标进程并退出。
    【解决方案2】:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-20
      • 1970-01-01
      • 2015-07-06
      相关资源
      最近更新 更多