Java读取word文件内容

小灰灰 2023-09-23 21:35 243阅读 0赞

前言

今天遇到一个读取word模板内容的需求,在网上找了很多种方案,有的代码比较复杂,有的读出来中文乱码,个人觉得使用Apache下面的poi包去实现起来比较简单,并且不会出现中文乱码的情况。

XWPFDocument

这次要用到一个新的类:XWPFDocument,它代表一个docx文档。是apache基金会提供的用户导出Word文档的工具类。

引入依赖

  1. <dependency>
  2. <groupId>org.apache.poi</groupId>
  3. <artifactId>poi</artifactId>
  4. <version>4.0.0</version>
  5. </dependency>
  6. <dependency>
  7. <groupId>org.apache.poi</groupId>
  8. <artifactId>poi-ooxml</artifactId>
  9. <version>4.0.0</version>
  10. </dependency>

准备一个word文档

提前准备一个word文档,随便写点内容:

在这里插入图片描述

编写demo

然后简单编写一个demo,测试下读取文件里面的内容:

  1. package com.test;
  2. import org.apache.poi.xwpf.extractor.XWPFWordExtractor;
  3. import org.apache.poi.xwpf.usermodel.XWPFDocument;
  4. import java.io.File;
  5. import java.io.FileInputStream;
  6. public class FileTest {
  7. public static void main(String[] args){
  8. File file = new File("C:\\Users\\PC\\Desktop\\test.docx");
  9. FileInputStream fis = null;
  10. XWPFDocument document = null;
  11. XWPFWordExtractor extractor = null;
  12. try {
  13. fis = new FileInputStream(file);
  14. document = new XWPFDocument(fis);
  15. extractor = new XWPFWordExtractor(document);
  16. System.out.println(extractor.getText());
  17. } catch (Exception e) {
  18. e.printStackTrace();
  19. }
  20. }
  21. }

运行查看结果

通过控制台可以看到,可以正常的读取到里面的内容

在这里插入图片描述

扩展

上面的用的是是docx类型的,对于doc类型也是支持的:

在这里插入图片描述

在这里插入图片描述

总结

关于这个包的使用,会再次更新,想要实现通过Java读取word文件内容,也不是这一种方式,个人觉得简单好用,再次推荐给大家

发表评论

表情:
评论列表 (有 0 条评论,243人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Java读取word文件内容

    前言 今天遇到一个读取word模板内容的需求,在网上找了很多种方案,有的代码比较复杂,有的读出来中文乱码,个人觉得使用Apache下面的poi包去实现起来比较简单,并且不