poi读取word文档中内容

SpringBoot+poi实现读取word文件内容 阅读详情

poi  读取word文档中内容


package com.test.document.util;

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;

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;

public class ReadWordUtil {

    public static void main(String[] args) throws Exception {
        String path = "c:\\Oracle安装和配置.doc";        
        String context = readWord(path);
        System.out.println(context);
    }

    /**
     * 读取word 中文本数据,采用poi读取 poi 版本3.8
     *
     * @param path
     *            word文档路径
     * @return
     */
    public static String readWord(String path) {

        InputStream is = null;
        String content = "";
        String suffix = path.substring(path.lastIndexOf(".") + 1);
        try {
            if (suffix.equals("doc")) {
                // word 2003: 图片不会被读取
                is = new FileInputStream(new File(path));
                WordExtractor ex = new WordExtractor(is);// is是WORD文件的InputStream
                content = ex.getText().trim();
            } else if (suffix.equals("docx")) {
                // word 2007 图片不会被读取, 表格中的数据会被放在字符串的最后
                OPCPackage opcPackage = POIXMLDocument.openPackage(path);
                POIXMLTextExtractor extractor = new XWPFWordExtractor(
                        opcPackage);
                content = extractor.getText().trim();
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (is != null) {
                try {
                    is.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return content;
    }
}


注意:poi 版本为3.8,我资源中心可以下载。



Java使用POI库读取Word文档内容教程 Apache POI库是Java领域中用于处理Microsoft Office文档的一个强大工具,它支持读取和写入Microsoft Office格式文件,如Excel电子表格(.xls和.xlsx)、Word文档(.doc和.docx)以及PowerPoint演示文稿(.ppt和.pptx)等。POI为开发者提供了丰富的API,允许用户通过编程方式访问和修改文件中的数据,从而实现办公自动化和数据交互。POI库在版本管理上区分了旧版和新版的Office格式处理能力,对于较旧的.doc和。 阅读详情

相关推荐

HTTPS接口测试翻车实录:为什么浏览器能访问而curl报证书错误?

本文深入分析了HTTPS接口测试中浏览器访问正常而curl报证书错误的典型问题。通过对比浏览器、Postman和curl的工具行为差异,结合Nginx日志与Wireshark抓包,揭示了问题根源在于网络架构中HTTPS请求被意外“降级”为HTTP传输,导致SSL握手失败。文章重点探讨了curl工具严格验证机制暴露的`Peer's Certificate issuer is not recognized`错误,并提供了网络配置修正方案与标准化测试流程。

u9v0w的博客 277

Java解析word文档

java利用POI解析word文档

MENGBAA的博客 1万+

【技术分享】语音多模态LLM越狱

语音多模态LLM越狱攻击作为一种新兴安全威胁,揭示了多模态模型在语音输入场景下的脆弱性。尽管已有多种攻击方法被提出,但其具体实现步骤、防御措施的有效性及行业影响等问题仍需进一步探索[9]。未来研究应聚焦于改进模型架构、开发针对性防御策略,并评估语音输入越狱攻击的实际危害。只有通过全面理解这些挑战,才能为多模态智能系统的安全性提供更可靠的保障。说到语音多模态LLM越狱的具体实现步骤,这其实是一个复杂且多层次的过程🧐。首先,攻击者需要深入分析目标模型的响应模式和安全机制,找出可能的漏洞点。

qq_29883477的博客 1261

利用word的xml格式,使用POI在图片位置插入文字

使用POI在图片之后插入文字 首先要知道docx文件是zip形式保存的,文档内容会保存为xml格式。我们将一个docx文件后缀改为zip并打开,会发现里面又很多文件夹以及xml文件。 内容存在word文件夹下的 File file = new File(filePath); in = new FileInputStream(file); XWPFDocument doc = new XWPFDocument(in); //获取段落 List<XWPFParagraph> paraList

学习要趁早z 2185

AI市场风起云涌,ai浏览器是最佳的落地项目,现在ai市场的ai浏览器竞争加剧,得ai浏览器者得天下!

从场景覆盖度来看,AI 浏览器已突破 “网页浏览” 的传统边界,成为连接个人生活、工作、消费的 “超级入口”,这是其他 AI 应用难以比拟的落地优势。在个人生活场景,AI 浏览器可基于用户行为数据主动提供服务 —— 当用户浏览马拉松赛事信息时,浏览器能自动生成 “训练计划 + 装备推荐 + 能量补给方案”,并关联预订链接;在工作场景,Opera Neon 浏览器已实现 “网页内容提取 - 代码生成 - 报告撰写” 的全流程辅助,开发者可直接在浏览器内完成网站开发初稿;

zhang9880000的博客 1086

Vivado工程备份实战:两种方法快速迁移Block Design(附路径避坑指南)

本文详细介绍了Vivado工程中Block Design(BD)备份与迁移的两种核心方法:文件夹直接复制法与TCL脚本生成法。针对FPGA工程师在项目迁移或团队协作时常见的IP丢失、路径报错等问题,提供了从原理到实战的操作指南与路径避坑策略,确保设计可复现与高效协作。

pz890123的博客 1301

java 使用POI操作word获取样式

1 首先我们得得到一个XWPFDocument对象 XWPFDocument对象也就是我们所说的word文档对象,只有拥有此对象你才能操作word,poi实际上是将word解析成一个xml然后在读取里面的内容,所以你在操作word之前必须对一些概念有一定的了解,否则也是寸步难行。那么怎么获取XWPFDocument对象了,下面就是代码了。 XWPFDocument document= new XW...

Activiti工作流 7150

python基础语法与数据结构

本文摘要: Python基础语法包含输入输出、函数、变量、数据类型及运算符等内容。输入函数input()获取键盘输入并以字符串存储,输出函数print()可格式化输出数据。函数通过def定义,可带参数和返回值,提高代码复用性。变量无需声明类型,可动态赋值。数据类型包括数字、字符串、布尔及复合类型,可通过type()查看。运算符包含算术、赋值等类型,其中复合赋值运算符如+=可简化运算。类型转换函数如int()、str()等可实现显式类型转换。这些基础语法构成Python编程的核心要素。

MM602388的博客 431

poi 生成word 示例

public static XWPFDocument createDdtzdTable(DataObject para) throws AppException, IOException { boolean isxz = para.getBoolean("isxz", true);//是否新增 boolean issyq = para.getBoolean("issyq", false);

徐本锡的专栏 134万+

如何用zemax导入solidworks装配体

在zemax使用中,常常需要导入各种零件。如果光机结构较为复杂,那么手工一个一个加载零件,还需要在zmx文件中调整object的位置,非常麻烦。如果能将solidworks的装配体模型直接导入,则可以大幅减小工作量。具体过程为(非序列模式下): 1、新建或打开一个zemax空文件 2、在元件编辑器中,找到一个空文件,双击或直接展开三角符,在类型中找到zemax里的solidworks装配体,如图。...

wojiaoyyy的博客 1万+

YOLO26涨点改进 | 全网独家创新,注意力改进篇| SCI一区Top | 引入AFCA自适应细粒度通道注意力,联合建模全局与局部通道依赖关系,适合目标检测、图像去雾、关键点检测、图像分类、图像分割

🔥本文提出了一种基于AFCA(自适应细粒度通道注意力)模块改进的YOLO26目标检测网络。AFCA通过联合建模全局与局部通道依赖关系,实现了更精细的通道注意力分配,能够增强目标相关特征并抑制背景噪声。该模块采用自适应融合策略动态平衡通道权重,在保持轻量级结构的同时,显著提升了小目标和复杂背景下的检测性能。文章详细介绍了AFCA的结构原理、实现优势,并提供了完整的代码实现和YAML配置文件,指导读者如何将该模块集成到YOLO26框架中。实验结果表明,AFCA在检测精度和鲁棒性方面优于传统注意力机制。

Ai缝合怪、助力小伙伴高效发论文 294

【亲测免费】 引领文档提取新纪元:word-extractor 助您无缝处理Word文件

在日常开发工作中,处理各种文档格式往往是必不可少的任务之一。当遇到Word(.doc或.docx)文件时,传统的解决方案往往依赖于外部程序的辅助,不仅增加了安装和部署的复杂性,还在运行效率上大打折扣。今天,我将向大家推荐一款强大且高效的Node.js库——**word-extractor**,它能帮助开发者轻松地从Word文档中读取数据,彻底摆脱对外部程序的依赖。 ## 项目介绍 `word-...

gitblog_00060的博客 881

实战六十四:基于机器学习朴素贝叶斯的豆瓣Top250影评的情感分析与预测 附完整源码和数据

实战六十四:基于机器学习朴素贝叶斯的豆瓣Top250影评的情感分析与预测 附完整源码和数据

1563

java 读取word文档结构_使用POI读取word文档内容

1.pom.xml 中新增org.apache.poipoi4.0.0org.apache.poipoi-ooxml4.0.0org.apache.poipoi-scratchpad4.0.0org.apache.poipoi-scratchpad3.172.serviceimport lombok.extern.slf4j.Slf4j;import org.apache.poi.hwpf.HWP...

weixin_29332029的博客 600

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

poi 读取word标题_java读取word文档,提取标题和内容

packagecom.w.test;importjava.io.File;importjava.io.FileInputStream;importjava.io.InputStream;importjava.util.ArrayList;importjava.util.List;importjava.util.regex.Matcher;importjava.util.regex.Pattern;...

weixin_39860123的博客 1632

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

使用POI读取word文档内容

1.pom.xml 中新增 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.0.0</version> ...

fwk19840301的博客 1255

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

java poi无法读取word_Java使用POI读取Word文档时如果文档内容为空时出现异常

异常如下:org.apache.poi.EmptyFileException: The supplied file was empty (zero bytes long)at org.apache.poi.util.IOUtils.peekFirstNBytes(IOUtils.java:74)at org.apache.poi.util.IOUtils.peekFirst8Bytes(IOUti...

weixin_36062835的博客 5468

java poi 读取word_Java poi读取word文档(本篇只能读取text内容)

注意:word存在版本问题 分别为2003版本和2007版本(两个版本的操作是不一样的,已解决不同版本读取问题)1.既然是使用poi 当然是先看需要什么包咯maven导入依赖(三个依赖都是必须的)org.apache.poipoi3.16org.apache.poipoi-scratchpad3.16org.apache.poipoi-ooxml3.162.创建一个枚举(也可以不创建,反正现在...

weixin_42524945的博客 1073

POI读取word文档内容

/**      * 把附件上传至服务器目录下      *       * @param files      * @param req      * @return      */     @ResponseBody     @RequestMapping(value = "readFile", method = RequestMethod.POST)     public Map&lt;St...

liubowin的专栏 4150

Java poi读取word文档(本篇只能读取text内容)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34144848的博客 544

POI处理Word转HTML,读取文档内容上传图片

POI处理Word转HTML,读取文档内容上传图片POI处理Word转HTML,读取文档内容上传图片新的改变 POI处理Word转HTML,读取文档内容上传图片 需要给官网做一个文档管理的后台服务,需要一个上传Word文档转换成HTML格式返回给前端的功能,下面和大家一起来看看,后端部分的逻辑实现。 新的改变 ...

BXA 1423

POI读取word文档后插入内容以及设置标题样式

场景:读取docx文档后,将数据插入文档,并设置标题等样式 POI_JAR可以到此下载: https://www.apache.org/dyn/closer.lua/poi/release/bin/poi-bin-3.17-20170915.tar.gz 一 、POI读取word文档 InputStream is = null; is = new FileInputStream("docx文档路径"); XWPFDocument doc = new XWPFDocument(is); //doc为文.

建设美丽祖国 4512

java poi组件 读取word文档 替换文档 内容 图片

使用poi组件自动填充模板word的内容和图片.

Yoghurt的博客 1万+

在Java中判断Word文档中是否包含表格并读取表格内容,可以使用​​Apache POI​​库教程

笔者这里整理的jar包包含pdf读写的jar包,jar包如图1所示。读取world文件代码如下。

wobenwoxiangfei的博客 330
上一篇: Java字符串_日期_数字格式化输出
下一篇: Servlet 获得checkbox中的值
OilAlways
博客等级 码龄17年 57粉丝 27原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值