Word 处理文档组件
Word 处理文档(常见 WP = HWPF 和 XWPF)
本文主要介绍 POI 5.0.x HWPF 和 XWPF 两个库
HWPF - Horrible Word Processor Format
XWPF - Open Office XML Word Processor Format
此包包含用于处理 Microsoft .docx 文字处理文件的类,在 POI 中称为 XWPF(XML 文字处理格式)。
XWPFDocument 是核心,官方给的解释是**用于处理 .docx 文件的高级类**。
读取文档
使用有参构造方法可以读取 .docx
文档。
// 获取文档输入流
InputStream fileInputStream = new FileInputStream(filePath + fileName + ".docx");
// 创建 XWPFDocument 对象
XWPFDocument xwpfDocument = new XWPFDocument(fileInputStream);
生成文档
// 创建文档输出流
FileOutputStream fileOutputStream = new FileOutputStream(filePath + fileName + ".docx");
// 写入文档
xwpfDocument.write(fileOutputStream);
// 关闭文档输出流
fileOutputStream.close();
文档元素
XWPF 对象主要有段落、表格、图表几大元素
段落
方法 | 描述 | 备注 |
---|---|---|
createParagraph() | 在文档末尾创建一个新的段落 | |
insertNewParagraph(XmlCursor cursor) | 在 cursor 处插入一个新的段落 | |
setParagraph(XWPFParagraph p, int pos) | 复制 p 到 pos 位置 | |
getParagraphs() | 获取段落列表 | |
getParagraph(CTP p) | ||
getPosofParagraph(XWPFParagraph p) | 获取段落 p 的位置 | |
getLastParagraph() | 获取最后一个段落 | |
getParagraphArray(int pos) | 获取指定 pos 的段落 | |
getParagraphPos(int pos) | 获取指定 pos 的段落 | |
getParagraphsIterator() | 获取段落迭代器 | |
getParagraphsSpliterator() | 获取段落分割器 |