java Apache poi 对 word doc 文件进行读写操作
使用 POI 读写 Word doc 文件
Apache poi 的 hwpf 模块是专门用来对 word doc 文件进行读写操作的。在 hwpf
里面我们使用 HWPFDocument 来表示一个 word doc 文档。在 HWPFDocument 里面
有这么几个概念:
Range:它表示一个范围,这个范围可以是整个文档,也可以是里面的某一小节
(Section),也可以是某一个段落(Paragraph),还可以是拥有共同属性的一段文本
(CharacterRun)。
Section:word 文档的一个小节,一个 word 文档可以由多个小节构成。
Paragraph:word 文档的一个段落,一个小节可以由多个段落构成。
CharacterRun:具有相同属性的一段文本,一个段落可以由多个 CharacterRun 组
成。
Table:一个表格。
TableRow:表格对应的行。
TableCell:表格对应的单元格。
Section、Paragraph、CharacterRun 和 Table 都继承自 Range。
1 读 word doc 文件
在日常应用中,我们从 word 文件里面读取信息的情况非常少见,更多的还是把内容
写入到 word 文件中。使用 POI 从 word doc 文件读取数据时主要有两种方式:通过
WordExtractor 读和通过 HWPFDocument 读。在 WordExtractor 内部进行信息
读取时还是通过 HWPFDocument 来获取的。
1.1 通过 WordExtractor 读文件
在使用 WordExtractor 读文件时我们只能读到文件的文本内容和基于文档的一些属
性,至于文档内容的属性等是无法读到的。如果要读到文档内容的属性则需要使用
HWPFDocument 来读取了。下面是使用 WordExtractor 读取文件的一个示例:
?
1
2
3
4
5
6
7
8
9
1
0
1
1
1
2
1
public class HwpfTest {
@SuppressWarnings("deprecation")
@Test
public void testReadByExtractor() throws Exception {
InputStream is = new FileInputStream("D:\test.doc");
WordExtractor extractor = new WordExtractor(is);
//输出 word 文档所有的文本
评论1
最新资源