我有一个Web应用程序。我已经在服务器端以xml格式(Word 2003 XML Document)生成了MS Word文档。我需要使用某种查看器将此文档显示给客户端的用户。因此,问题是:我可以使用哪些库来解决此问题?我需要一个API才能 使用java 在客户端查看word文档。
您不能使用Java(或与此相关的任何其他简单技术)在网页中可靠地显示Word文档。有一些商业库可以渲染Word,但是您不会发现它们是简单,便宜或可靠的解决方案。
您应该执行以下操作:
(1)使用.NET程序在服务器上打开Word引擎(2)使用Word引擎将文档转换为RTF(3)使用RTF Swing小部件或将RTF显示为RTF:
String rtf = [your document rich text]; BufferedReader input = new BufferedReader(new StringReader(rtf)); RTFEditorKit rtfKit = new RTFEditorKit(); StyledDocument doc = (StyledDocument) rtfKit.createDefaultDocument(); rtfEdtrKt.read( input, doc, 0 ); input.close(); HTMLEditorKit htmlKit = new HTMLEditorKit(); StringWriter output = new StringWriter(); htmlKit.write( output, doc, 0, doc.getLength()); String html = output.toString();
这种方法的主要风险是Word引擎将崩溃或发生内存泄漏。因此,您必须具有一种机制来定期重新启动它并对其进行测试,以确保其功能正常并且不会占用内存。