一, 简介
Apache POI 是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程序对Microsoft Office(Excel、WORD、PowerPoint、Visio等)格式档案读和写的功能。POI为“Poor Obfuscation Implementation”的首字母缩写,意为“可怜的模糊实现”。(这么牛逼的类库,为啥起个这样的名字。。。)
Apache POI常用的类
HSSF - 提供读写Microsoft Excel XLS格式档案的功能。
XSSF - 提供读写Microsoft Excel OOXML XLSX格式档案的功能。
HWPF - 提供读写Microsoft Word DOC97格式档案的功能。
XWPF - 提供读写Microsoft Word DOC2003格式档案的功能。
HSLF - 提供读写Microsoft PowerPoint格式档案的功能。
HDGF - 提供读Microsoft Visio格式档案的功能。
HPBF - 提供读Microsoft Publisher格式档案的功能。
HSMF - 提供读Microsoft Outlook格式档案的功能。
二,配置开发环境
首先下载Apache POI ,配置jar包引用
为了方便把这六个jar包都导入了eclipse里,还要把ooxml-lib里的jar包也导入,要不然会报错:java.lang.ClassNotFoundException: org.apache.xmlbeans.XmlException
过程中,如果打开docx文件失败,提示:
java.lang.ClassNotFoundException: org.apache.commons.compress.archivers.zip.ZipFile
那是因为缺少对应的commons-compress-1.18.jar,在项目添加该包后问题解决。
commons-compress下载地址
http://commons.apache.org/proper/commons-compress/download_compress.cgi
三,操作doc和docx
通用的读取方法:
读取 doc,返回其所有内容。
private static String contextOfDoc(File file){
String str = "";
try {
FileInputStream fis = new FileInputStream(file);
HWPFDocument doc = new HWPFDocument(fis);
str &#