POI解析word文档,支持DOC和DOCX版本
POI解析word文档,支持DOC和DOCX版本
刘祖鹏 发表于11个月前
POI解析word文档,支持DOC和DOCX版本
  • 发表于 11个月前
  • 阅读 85
  • 收藏 0
  • 点赞 0
  • 评论 0

移动开发云端新模式探索实践 >>>   

一、简介

Apache POI是一个开源的利用Java读写Excel、WORD等微软OLE2组件文档的项目。最新的3.5版本有很多改进,加入了对采用OOXML格式的Office 2007支持,如xlsx、docx、pptx文档。

二、POI组成部分概览

  • 以下是POI的几个重要组成部分,以及各组件的功能概述。
  • POIFS是该项目的最古老,最稳定的一部分。.这是格式化OLE 2复合文档为纯Java的接口。 它同时支持读写功能。
  • 所有的组件,最终都依赖于它的定义
  • HSSF 和 XSSF
  • HSSF: MS-Excel 97-2003(.xls),基于BIFF8格式的JAVA接口。
  • XSSF:MS-Excel 2007+(.xlsx),基于OOXML格式的JAVA接口。
  • HWPF 和XWPF
  • HWPF: MS-Word 97-2003(.doc),基于BIFF8格式的JAVA接口。只支持.doc文件简单的操作,读写能力有限。本API为POI项目早期开发,很不幸的 是主要负责HWPF模块开发的工程师-“Ryan Ackley”已经离开Apache组织,现在该模块没有人维护、更新、完善。
  • XWPF:MS-Word 2007+(.docx),基于OOXML格式的JAVA接口。较HWPF功能完善。

三、所需JAR包 这里我使用3.9.x版本

  • poi-3.9-20121203.jar
  • poi-excelant-3.9-20121203.jar
  • poi-ooxml-3.9-20121203.jar
  • poi-ooxml-schemas-3.9-20121203.jar
  • poi-scratchpad-3.9-20121203.jar

四、代码 解析doc格式的文档

InputStream is = new FileInputStream(new File("E:\\TempDirectory\\knowledge_import.doc"));
WordExtractor wordExtractor = new WordExtractor(is);

System.out.println("【 使用getText()方法提取的Word文件的内容如下所示:】");
String text = wordExtractor.getText();
System.out.println(text);

解析docx格式的文档

XWPFWordExtractor docx = new XWPFWordExtractor(POIXMLDocument.openPackage("E:\\TempDirectory\\knowledge_import.docx"));
//提取.docx正文文本
String text = docx.getText();
System.out.println("解析DOCX格式的word文档!"+text);
  • 打赏
  • 点赞
  • 收藏
  • 分享
共有 人打赏支持
粉丝 2
博文 17
码字总数 26184
×
刘祖鹏
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: