文档章节

java读取doc文档

不最醉不龟归
 不最醉不龟归
发布于 2017/09/03 12:45
字数 183
阅读 40
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

本文永久地址:https://my.oschina.net/bysu/blog/1528130

相关jar下载地址:

http://mirror.bit.edu.cn/apache/poi/dev/bin/poi-bin-3.17-beta1-20170701.tar.gz

import java.io.File;
import java.io.FileInputStream;
import org.apache.poi.POIXMLDocument;
import org.apache.poi.POIXMLTextExtractor;
import org.apache.poi.hwpf.extractor.WordExtractor;
import org.apache.poi.openxml4j.opc.OPCPackage;
import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;

public class ReadFromDoc {
	public static void main(String[] args) {
		System.out.println(readWord("D:\\workspace\\java\\大学英语.doc"));
	}

	public static String readWord(String filePath) {
		String text = "";
		File file = new File(filePath);
		// 2003
		if (file.getName().endsWith(".doc")) {
			try {
				FileInputStream stream = new FileInputStream(file);
				WordExtractor word = new WordExtractor(stream);
				text = word.getText();
				// 去掉word文档中的多个换行
				text = text.replaceAll("(\\r\\n){2,}", "\r\n");
				text = text.replaceAll("(\\n){2,}", "\n");
				stream.close();
			} catch (Exception e) {
				e.printStackTrace();
			}

		} else if (file.getName().endsWith(".docx")) { // 2007
			try {
				OPCPackage oPCPackage = POIXMLDocument.openPackage(filePath);
				XWPFDocument xwpf = new XWPFDocument(oPCPackage);
				POIXMLTextExtractor ex = new XWPFWordExtractor(xwpf);
				text = ex.getText();
				// 去掉word文档中的多个换行
				text = text.replaceAll("(\\r\\n){2,}", "\r\n");
				text = text.replaceAll("(\\n){2,}", "\n");
				System.out.println("ok");
			} catch (Exception e) {
				e.printStackTrace();
			}
		}
		return text;
	}
}

 

本文转载自:http://blog.csdn.net/zyczy1314/article/details/50594967

不最醉不龟归
粉丝 28
博文 465
码字总数 487907
作品 0
深圳
程序员
私信 提问
加载中

评论(0)

使用 Apache POI 和 OpenOffice API 在 Linux 中统计 Office 文档的页数

简介: 在实际的项目开发中经常会遇到需要在不同的操作系统平台上统计 Microsoft Office 系列文档页数的要求。Apache POI 提供了一套完整的用于访问微软格式文档的 Java API。但是 Apache P...

IBMdW
2012/10/26
2.3K
0
poi操作doc文档

http://haofenglemon.iteye.com/blog/568897 关键字:POI JAVA 批注 总页数 总字符数 一:认识POI Apache POI是一个开源的利用Java读写Excel、WORD等微软OLE2组件文档的项目。最新的3.5版本有...

yunlong090614
2015/01/30
13
0
纯Java文档阅读器(word、pdf等)

XDocViewer是一个纯Java的文档阅读器组件,可以方便的集成到Java应用中(也可以集成到Web应用中),它有如下特点: 1、免费 2、支持的文档格式丰富:MS Office文档(doc、docx、ppt、pptx、x...

xdoc
2012/01/17
3.5K
4
sharding-jdbc源码分析—准备工作

原文作者:阿飞Javaer 原文链接:https://www.jianshu.com/p/7831817c1da8 接下来对sharding-jdbc源码的分析基于tag为源码,根据sharding-jdbc Features深入学习sharding-jdbc的几个主要特性...

飞哥-Javaer
2018/05/03
0
0
[转载]java导出word的5种方式

在网上找了好多天将数据库中信息导出到word中的解决方案,现在将这几天的总结分享一下。总的来说,java导出word大致有5种解决方案: 1:Jacob是Java-COM Bridge的缩写,它在Java与微软的COM...

osc_s5wa3ebb
2018/05/07
59
0

没有更多内容

加载失败,请刷新页面

加载更多

比较好用的自媒体分发工具是哪个?

正是源于互联网生态的健康发展,从15年开始到现在,自媒体文化产业特别有关注度,其品牌形象鲜明、优秀的转化能力的数不胜数的亮点,故而吸引着数不清的创作者,而为了达到更出彩的播放量,这...

易媒助手
57分钟前
38
0
idea2020.1 pojie

前几天最新版的idea2020.1终于发布了,它有多香相信小伙伴们已经有所耳闻。现在就拿出来分享给小伙伴们。   所需要的的东西放在这里了,同时里面也放了一个idea2020.1,小伙伴可以选择性的...

我喜欢你有用吗__
今天
32
0
从企业微信机器人到小爱同学,用 Serverless 实现生活智能化!

通过定时触发器,可以简单快速地定制一个企业微信机器人。我们可以用它来实现喝水、吃饭提醒等小功能,还能实现定时推送新闻、天气,甚至是监控告警的小功能。 使用企业微信机器人 在企业微信...

腾讯云Serverless
今天
32
0
socket编程基础,从了解到实现

java生下来一开始就是为了计算机之间的通信,因此这篇文章也将开始介绍一下java使用socket进行计算机之间的通信,在上一篇文章中已经对网络通信方面的基础知识进行了总结,这篇文章将通过代码...

虹越云霄
今天
41
0
Spring Enable***功能

spring博大精深,衍生出了两大系列:spring boot 和sping cloud快速业务开发模式。 我们进行具体开发时,经常看到这样以Enable*开头的注解,如图 等等好多例子。。。框架自带的Enable* @En...

董广明
今天
41
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部