当前位置:  开发笔记 > 编程语言 > 正文

从Java打开文档的更好方法?

如何解决《从Java打开文档的更好方法?》经验,为你挑选了1个好方法。

我一直在使用以下代码在我的Windows机器上使用Java打开Office文档,PDF等,并且它工作正常,除了某些原因,当文件名将其嵌入其中的多个连续空格如"File [SPACE] [ SPACE] Test.doc的".

我怎样才能做到这一点?我并不反对将整段代码编成罐头......但我宁愿不用一个调用JNI的第三方库替换它.

public static void openDocument(String path) throws IOException {
    // Make forward slashes backslashes (for windows)
    // Double quote any path segments with spaces in them
    path = path.replace("/", "\\").replaceAll(
            "\\\\([^\\\\\\\\\"]* [^\\\\\\\\\"]*)", "\\\\\\\"$1\"");

    String command = "C:\\Windows\\System32\\cmd.exe /c start " + path + "";

    Runtime.getRuntime().exec(command);            
}

编辑:当我用错误的文件窗口运行它抱怨找到文件.但是......当我直接从命令行运行命令行时,它运行得很好.



1> Dan Dyer..:

如果您使用的是Java 6,则只需使用java.awt.Desktop的open方法即可使用当前平台的默认应用程序启动该文件.

推荐阅读
mobiledu2402852413
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有