java 处理word文档-POI包

这篇博客介绍了Apache POI,一个用于处理Microsoft Office格式档案的Java API,包括读写Excel、Word、PowerPoint等。文章讲解了如何配置开发环境,特别是处理docx文件时需要的commons-compress库,并提醒了doc与docx在换行符和文件类型上的区别。此外,还提出了根据文件前8字节判断类型的FileMagic解决方案,以避免仅依赖文件后缀名可能导致的错误。
摘要由CSDN通过智能技术生成

一, 简介

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 &#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值