`

Apache Poi 读写 word 文档

    博客分类:
  • POI
阅读更多

使用 Apache Poi 读写 word 文档

写操作:

package com.poi.word;

import java.io.FileOutputStream;
import java.io.IOException;
import java.util.Date;
import java.util.List;

import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFRun;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableCell;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;

/**
 * 写入 word 
 * @author LGF 2015-01-03
 *
 */
public class WriterWord {
	public static void main(String[] args) throws IOException {
		//创建文档对象
		XWPFDocument doc = new XWPFDocument();
		//创建 XWPFWordExtractor 传入 文档
		XWPFWordExtractor we = new XWPFWordExtractor(doc);
		//创建一个段落
		XWPFParagraph paragraph = doc.createParagraph();
		//一个XWPFRun代表具有相同属性的一个区域。  
		XWPFRun run = paragraph.createRun();
		//执行 10 遍写入 word 文档
		for (int i = 0; i < 10; i++) {
			run = doc.createParagraph().createRun();
			run.setColor("ff0000");
			run.setFontFamily("宋体");
			run.setFontSize(15);
			run.setText("第 "+i+" hello world ...  ");
		}
		//创建一个表格
		XWPFTable table = doc.createTable(10, 3);
//	    table.addNewCol(); //给表格增加一列
//	    table.createRow(); //给表格新增一行
		List<XWPFTableRow> rows = table.getRows();
		for (XWPFTableRow r : rows) {
			List<XWPFTableCell> cs = r.getTableCells();
			for (int i = 0; i < cs.size(); i++) {
				XWPFTableCell c = cs.get(i);
				c.setText(i+" *_* " + new Date());
			}
		}
		//写入
		doc.write(new FileOutputStream("src/test.doc"));
		//释放资源
		we.close();
		System.out.println("success");
		
	}
}

 

读操作:

package com.poi.word;

import java.io.InputStream;
import java.util.List;

import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
import org.apache.poi.xwpf.usermodel.XWPFDocument;
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
import org.apache.poi.xwpf.usermodel.XWPFTable;
import org.apache.poi.xwpf.usermodel.XWPFTableCell;
import org.apache.poi.xwpf.usermodel.XWPFTableRow;

/**
 * 读取 word 文档
 * @author LGF 2015-01-03
 *
 */
public class ReadWord {
	public static void main(String[] args) throws Exception {
		ReadWord rw = new ReadWord();
		//获取输入流
		InputStream input = rw.getInputStream("test.doc");
		//创建一个 XWPFDocument 对象 传入 输入流
		XWPFDocument doc = new XWPFDocument(input);
		//获取所有的段落
		List<XWPFParagraph> paragraphs = doc.getParagraphs();
		System.out.println("----------段落---------");
		for (XWPFParagraph p : paragraphs) {
			System.out.println(p.getText());
		}
		//获取所有的表格
		List<XWPFTable> tables = doc.getTables();
		System.out.println("----------表格---------");
		for (XWPFTable t : tables) {
			List<XWPFTableRow> rows = t.getRows();
			for (XWPFTableRow r : rows) {
				List<XWPFTableCell> c = r.getTableCells();
				for (XWPFTableCell tc : c) {
					String text = tc.getText();
					System.out.print(text + " --> ");
				}
				System.out.print("\n");
			}
		}
		//创建一个 XWPFWordExtractor 对象 传入 文档对象
		XWPFWordExtractor we = new XWPFWordExtractor(doc);
		//获取文档中的字符
		System.out.println("\n----------全部字符---------");
		String text = we.getText();
		System.out.println(text);
		//释放资源
		we.close();
		input.close();
		
	}
	
	/**
	 * 获取 class path 中的文件流
	 * @param name 名称
	 * @return InputStream 
	 */
	public InputStream getInputStream(String name){
		return Thread.currentThread().getContextClassLoader().getResourceAsStream(name);
	}
}

 

分享到:
评论

相关推荐

    java Apache poi 对word doc文件进行读写操作

    使用POI读写Word doc文件 Apache poi的hwpf模块是专门用来对word doc文件进行读写操作的。在hwpf里面我们使用HWPFDocument来表示一个word doc文档

    android使用POI操作word docx文档

    android使用POI操作word docx文档,根据 【***】这种标识规则,替换掉docx文档中的内容

    apache POI 3.12 API (CHM格式)

    Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目 从之前发布其他chm文件下载用户的反映看,有不少朋友反映下载后打开无法显示,这一般不是chm文件的问题,这里统一说明一下解决办法: 如果文件...

    poi教程之word文档

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程式对Microsoft Office格式档案读和写的功能。 结构:  HSSF - 提供读写Microsoft Excel格式档案的功能。  XSSF - 提供读写Microsoft Excel ...

    java excel操作 poi-3.17 可用于jdk1.70

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 HSSF - 提供读写Microsoft Excel格式档案的功能。 XSSF - 提供读写Microsoft Excel OOXML格式档案...

    poi4.1.0和poi4.1.1,JAVA读写office文档的开源工具

    Apache POI是Apache软件基金会的开源项目,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 包名称说明: HSSF提供读写Microsoft Excel XLS格式档案的功能。 XSSF提供读写Microsoft Excel OOXML ...

    POI Apache官方开发包

    Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。目前POI已经有了Ruby版本。 结构: •HSSF - 提供读写Microsoft Excel XLS格式档案的功能。 •XSSF - 提供读写Microsoft Excel OOXML XLSX...

    poi-4.1.3(JAVA读写Office文档的API)

    Apache软件基金会用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程序对Microsoft Office格式档案读和写的功能。poi4.x已经很好的支持office 2013及以后的版本格式。这里提供的poi4.1.3版本,...

    poi帮助文档

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 HSSF - 提供读写Microsoft Excel格式档案的功能。 XSSF - 提供读写Microsoft Excel OOXML格式档案...

    POI导入测试用数据users.xls

    Apache POI项目的任务是创建和维护Java API,以便根据Office Open XML标准(OOXML)和Microsoft的OLE 2复合文档格式(OLE2)操作各种文件格式。简而言之,您可以使用Java读写MS Excel文件。此外,您还可以使用Java...

    最新POI Lib Java Excel转换成Txt

    Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。目前POI已经有了Ruby版本。 结构: •HSSF - 提供读写Microsoft Excel XLS格式档案的功能。 •XSSF - 提供读写Microsoft Excel OOXML XLSX...

    (ApachePOIHSSFandXSSF快速指南帮助文档

    Apache POI 是创建和维护操作各种符合Office Open XML(OOXML)标准和微软的OLE 2复合文档格式(OLE2)的Java API。用它可以使用Java读取和创建,修改MS Excel文件.而且,还可以使用Java读取和创建MS Word和...

    POI_3.8_API.CHM chm格式

    Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目 从之前发布其他chm文件下载用户的反映看,有不少朋友反映下载后打开无法显示,这一般不是chm文件的问题,这里统一说明一下解决办法: 如果文件...

    poi 3.8 beta3-20110606最新版本

    Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。目前POI已经有了Ruby版本。 结构: HSSF - 提供读写Microsoft Excel XLS格式档案的功能。 XSSF - 提供读写Microsoft Excel OOXML XLSX格式...

    POI_3.7_API.CHM chm格式

    Apache POI API 文档 chm格式带索引和全文检索,方便携带和查询 Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目

    Spring Boot中实现列表数据导出为Excel文件

    它是Apache软件基金会的一个开源项目,提供了多种API来处理Office文档,包括Word、Excel、PowerPoint等。Apache POI的主要目标是提供一种简单、可靠的方式来使用Java程序操作这些常见的文件格式。 Apache POI库的...

    POI 3.8 jar包打包下载

    Apache POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。此压缩包中包含所有POI相关的jar包

    Java POI中文教程

    Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能,是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。

    POI 3.16 beta1最新jar包

    Apache POI 3.16 beta 1 发布了,Apache POI 是一个开源的 Java 读写 Excel、WORD 等微软 OLE2 组件文档的项目。目前 POI 已经有了 Ruby 版本。这次更新包括一批功能性领域和 bug 修复。

    POI最新最全JAR包3.6版

    ApachePOI项目是一个对微软文档格式进行读写的开源JAVA库软件。现在已更新到了3.6版本。新的版本提供了更少的内存消耗以及在改善对电子表格格式的处理性能。根据开发者,相比先前版本,POI3.6在处理电子表格数据时...

Global site tag (gtag.js) - Google Analytics