使用Java,如何让Word打开和编辑文件?

可能重复:
在java中打开excel文档

我的Java应用程序中有一个按钮,当单击它时,应该导致Word打开一个特定的文件。 此文件位于文件系统中的某个位置,就像在用户的文档目录中一样。

我怎样才能在Java中实现这样的东西?

这是简单的演示应用程序,您可以修改按钮单击事件:

import java.awt.Desktop; import java.io.File; import java.io.IOException; public class Test { public static void main(String[] a) { try { if (Desktop.isDesktopSupported()) { Desktop.getDesktop().open(new File("c:\\a.doc")); } } catch (IOException ioe) { ioe.printStackTrace(); } } 

}

这将使用默认的单词应用程序打开word文件。 有关桌面的详细信息

一种方法是执行默认程序以通过shell打开文档。

在Windows上:

 Process p = Runtime.getRuntime() .exec("rundll32 url.dll,FileProtocolHandler C:/Path/To/Word.doc"); p.waitFor(); System.out.println("Done."); 

苹果电脑:

 Process p = Runtime.getRuntime().exec("open /Documents/word.doc"); 

来自 – http://www.rgagnon.com/javadetails/java-0014.html

理想的解决方案是使用java.awt.Desktop api。 在某些Windows平台上有一个与桌面有关的漏洞(但目前尚不清楚哪些是正确的,它会导致进程崩溃,所以它不像你可以试一试并退回),所以对于Windows我使用相同的arunkumar发布的rundll32 url.dll, FileProtocolHandler (filename)解决方案。

我有一个类似问题的答案,它有示例代码并列出了open bug的链接。