使用Java将Microsoft Word文档读入纯文本(DOC,DOCX)

我正在寻找Java中的东西来阅读Word文档来处理他们的文本..所有我需要的是文本,没什么花哨的。 我知道Apache POI,但它现在不包括对DOCX的支持,那里有什么东西?

如果您不需要格式化信息,图像和所有其他花哨的东西,那么工作就容易多了。 只需要5到10行代码即可。

  1. 将DOCX视为zip文件。 它包含一堆包含’document.xml’的文件。 使用ZipInputStream并单独提取该文件。 (您可以使用自己喜欢的zip工具并打开docx并自己查看!)
  2. 使用SAX解析器并在节点体/ p / r / t之间读取内容 – 瞧,你得到了文本!

仅在您仅需要文本时才适用

通过一些谷歌搜索,我找到了OpenXML4J 。 这可能会解决您的问题。 在我确信社区中的某个人有更好的洞察力之前,我没有使用过这个。

注意:这是一个重复的问题。 这有解决方案加上一些讨论。 链接到问题。

试试apache poi – 它可以处理doc,docx,xl​​s,xlsx,ppt,pptx。

另一种生产级解决方案是无头模式的OpenOffice,甚至可以在服务器端场景中使用。

你可以试试docx4j; 见http://dev.plutext.org/svn/docx4j/trunk/docx4j/src/main/java/org/docx4j/TextUtils.java