Java通过poi读取word,excel,ppt文件中文本(excel,ppt部分)

使用Apache POI实现Java操作Office文件:从Excel、Word到PPT模板写入 Apache POI为Java开发者提供了强大的Office文件操作能力,无论是基础的数据写入,还是复杂的模板定制,都能通过灵活组合API实现。掌握POI的核心组件(XSSF/XWPF/XSLF)和元素定位技巧,可高效解决企业级开发中的文档自动化需求。延伸思考:结合POI-TL等工具可实现更复杂的Word模板引擎,而面对超大数据量Excel处理时,需合理选择HSSF(旧格式)、XSSF(新格式)或SXSSF(流式)方案。建议在实际项目中根据文件格式、数据量和功能复杂度选择最佳实现方式。 阅读详情

word部分介绍了通过poi读取.DOC和.DOCX文档文字并返回字符串的方法,这篇继续excel以及ppt内容


word部分连接:http://blog.youkuaiyun.com/runningterry/article/details/47086659


POIFS:是格式化OLE 2复合文档为纯Java的接口。 它同时支持读写功能。所有的组件,最终都依赖于它的定义

HSSF: MS-Excel 97-2003(.xls),基于BIFF8格式的JAVA接口。

HWPF: MS-Word 97-2003(.doc),基于BIFF8格式的JAVA接口。只支持.doc文件简单的操作,读写能力有限。(上一篇)

HSLF:MS - PowerPoint 97-2003 (.ppt),基于BIFF8格式的JAVA接口。

XSSF:MS-Excel 2007+(.xlsx),基于OOXML格式的JAVA接口。

XWPF:MS-Word 2007+(.docx),基于OOXML格式的JAVA接口。较HWPF功能完善。(上一篇)

XSLF: MS - PowerPoint 2007+(.pptx),基于OOXML格式的JAVA接口。较HWPF功能完善。


一:HSSF读取excel97-2003文本实例以及XSSF读去excle2007+文本实例

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


import org.apache.poi.hssf.extractor.ExcelExtractor;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.poifs.filesystem.POIFSFileSystem;;
import org.apache.poi.xssf.extractor.XSSFExcelExtractor;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;



public class FileTextRead {
	 //直接读取Excel97-2003的全部内容 	xls
    public static String getTextFromExcel(String filePath){
        InputStream is = null;
        HSSFWorkbook wb = null;
        String text="";
        try {
            is = new FileInputStream(filePath);
            wb = new HSSFWorkbook(new POIFSFileSystem(is));
            ExcelExtractor extractor=new ExcelExtractor(wb);
            extractor.setFormulasNotResults(false);
            extractor.setIncludeSheetNames(true);
            text=extractor.getText();
            extractor.close();
        } catch (FileNotFoundException e) {
            System.out.println("没有找到指定路径"+filePath);
            e.printStackTrace();
        } catch (IOException e) {
            System.out.println("getTextFromExcel IO错误");
            e.printStackTrace();
        }
        return text;
    }
    //读取Excel2007+的全部内容 xlsx
    public static String getTextFromExcel2007(String filePath) {
        InputStream is = null;
        XSSFWorkbook workBook = null;
        String text="";
        try {
            is = new FileInputStream(filePath);
            workBook = new XSSFWorkbook(is);
            XSSFExcelExtractor extractor=new XSSFExcelExtractor(workBook);
            text=extractor.getText();
            extractor.close();
        } catch (FileNotFoundException e) {
            System.out.println("没有找到指定路径"+filePath);
            e.printStackTrace();
        } catch (IOException e) {
            System.out.println("getTextFromExcel2007 IO错误");
            e.printStackTrace();
        }
        return text;
    }
    public static void main(String[] args) {
	    System.out.println(FileTextRead.getTextFromExcel("d:\\testExcel97-2003.xls"));                        
            System.out.println(FileTextRead.getTextFromExcel2007("d:\\testExcel2007.xlsx"));
    }
}

二:HSLF读取PowerPoint97-2003文本实例以及XSLF读去PowerPoint2007+文本实例

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

import org.apache.poi.hslf.extractor.PowerPointExtractor;
import org.apache.poi.xslf.extractor.XSLFPowerPointExtractor;
import org.apache.poi.xslf.usermodel.XMLSlideShow;



public class FileTextRead {
    public static void main(String[] args) {
	System.out.println(FileTextRead.getTextFromPPT("d:\\textPPT97-2003.ppt"));
        System.out.println(FileTextRead.getTextFromPPT("d:\\textPPT2007.pptx"));
    }
    //直接抽取ppt97-2003的全部内容 ppt
    public static String getTextFromPPT(String filePath) {
        InputStream is = null;
        PowerPointExtractor extractor = null;
        String text="";
        try {
            is = new FileInputStream(filePath);
            extractor = new PowerPointExtractor(is);
            text=extractor.getText();
            extractor.close();
        } catch (FileNotFoundException e) {
            System.out.println("没有找到指定路径"+filePath);
            e.printStackTrace();
        } catch (IOException e) {
            System.out.println("getTextFromPPT IO错误");
            e.printStackTrace();
        }
        return text;
    }
    //抽取幻灯片2007+全部内容  pptx
    public static String getTextFromPPT2007(String filePath){
        InputStream is = null;
        XMLSlideShow slide = null;
        String text="";
        try {
            is = new FileInputStream(filePath);
            slide = new XMLSlideShow(is);
            XSLFPowerPointExtractor extractor=new XSLFPowerPointExtractor(slide);
            text=extractor.getText();
            extractor.close();
        } catch (FileNotFoundException e) {
            System.out.println("没有找到指定路径"+filePath);
            e.printStackTrace();
        } catch (IOException e) {
            System.out.println("getTextFromPPT2007 IO错误");
            e.printStackTrace();
        }
        return text;
    }
}

 


Java语言利用POI读取excel文档,利用Freemarker建立word模板(带图片),excel每一行数据生成单个word文档,再利用POI合并成一个word文档 需求: 现有一个excel文档,该文档从第三行开始,每一行代表一个化石及其相关的登记资料,如图1,现在需要将每一行数据的内容,填写到对应的word文档中,并将入库照片编号对应的照片插入对应位置,如图2,最后要求不能生成单个的word文档,因为文档个数多了,不方便整理和打印,需要合并成一个或者多个; 图1: 图2: 实现思路: Java语言利用... 阅读详情

相关推荐

Hutool - POI:让 Excel 与 Word 操作变得轻而易举

各位开发者们,在日常的 Java 开发工作里,处理 Excel 和 Word 文件是相当常见的需求。无论是从 Excel 里读取数据进行分析,还是将数据写入 Excel 生成报表,亦或是对 Word 文档进行内容编辑,传统的 Apache POI 库虽然功能强大,但使用起来往往比较复杂,代码量也不少。不过,有了 Hutool - POI 这个得力助手,一切都变得轻松起来了。它对 Apache POI 进行了封装,提供了简洁易用的 API,让我们可以更高效地操作 Excel 和 Word 文件。

十年磨一剑,java开发各种业务系统 2453

【Java】使用Apache POI识别PPT中的图片和文字,以及对应的大小、坐标、颜色、字体等

本文介绍如何使用Apache POI识别PPT中的图片和文字,获取图片的数据、大小、尺寸、坐标,以及获取文字的字体、大小、颜色、坐标

浩瀚宇宙的一粒尘埃 3382

poi word excel ppt pdf 读取纯文件流 适用于lucene全文检索

package com.fzky.diams.web.luncene; import java.io.BufferedInputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; imp

jc橙子的博客 1705

Java实现poi方式读取word文件内容(不带格式)

声明:文章为原创,代码也是经过网上查询整理的,如有雷同,合情合理,博主很诚实。 1.此技术分享实现Java程序从word文档中读取文本内容保存为字符串,很简单。 2.准备工作:poi的jar包,我用的是3.16版本,官网上下载就可以,找不到的可以留言联系我。 3.直接上代码 pack...

长风破晓 3万+

Apache POI库操作Excel、Word与PowerPoint

Apache POI项目是Java平台中用于处理Microsoft Office文档的开源库。它能够读写Microsoft Office格式的文件,包括Excel、Word和PowerPoint等。POI为开发者提供了一系列丰富的API,使得操作这些复杂格式的文档变得简单高效。POI库的核心优势在于它的跨平台兼容性,它允许Java开发者在各种操作系统上无缝操作Office文档。无论是需要进行数据报告的自动化、文档内容的批量更新,还是简单的文档生成,POI都能够提供强有力的支撑。

weixin_35696112的博客 941

AD620单电源应变片测量电路分析

笔者最近在用AD620做应变片的压力检测电路,正好AD620的datasheet中有对于应变片压力测量的应用电路,参考该电路进行设计及实验后发现该电路存在些许问题,并对其进行了优化改进。本文纯属个人理解,供大家参考,欢迎批评指正。 AD620应用电路分析及优化 应用电路分析 AD620手册中原电路如下(加了部分标注以便分析): 该电路中,前半部分比较明显,为经典的AD620放大电路结构:四个应变...

拙诚电子工作室 1万+

读取DOC、DOCX、 XLS 、XLSX 、PDF 、PPTX 、TXT文档内容

读取DOC、DOCX、 XLS 、XLSX 、PDF 、PPTX 、TXT文档内容 POM 依赖 org.apache.poi org.apache.pdfbox 代码 package org.jeecg.common.util; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.IOException; import java.io.I.

书读百遍,其义自见 854

自监督学习与上下文赌博机融合:视觉决策中的协同优化与实战指南

在机器学习领域,自监督学习(Self-Supervised Learning)通过设计前置任务从无标注数据中学习通用表征,已成为解决标注数据稀缺问题的关键技术。其核心原理是利用数据自身的结构生成监督信号,训练编码器提取鲁棒特征。上下文赌博机(Contextual Bandits)作为强化学习的简化分支,专注于在给定上下文信息下做出单步最优决策,平衡探索与利用,广泛应用于推荐系统、广告投放等场景。将两者结合,构建端到端的协同训练框架,能让视觉表征的优化直接服务于最终的决策目标,同时利用自监督任务作为正则化项提

weixin_33721344的博客 520

Java通过poi读取word,excel,ppt文件中文本(word部分)

一:认识POI  Apache POI是一个开源的利用Java读写Excel、WORD等微软OLE2组件文档的项目。3.5以后加入了对采用OOXML格式的Office 2007支持,如xlsx、docx、pptx文档。  POI主页:poi.apache.org/ 二:POI下载地址:http://poi.apache.org/download.html  目前版本最新版本3.13be

RunningTerry的博客 2977

银河麒麟V10 SP3离线安装Nginx1.21.5全记录(附11个rpm包下载清单)

本文详细记录了在银河麒麟V10 SP3操作系统上离线安装Nginx 1.21.5的全过程,包括11个必备rpm包的下载清单。通过分步骤的实战指南,帮助用户在国产化环境中高效部署Nginx服务,涵盖安装、配置、调优及故障排查等关键环节,特别适合金融、政务等对安全性要求高的场景。

weixin_30872337的博客 606

Python多进程实战:用BaoStock高效下载股票历史数据的5个优化技巧

本文详细介绍了使用Python多进程技术通过BaoStock高效下载股票历史数据的5个优化技巧。从理解BaoStock的数据获取机制到进程池配置、智能任务分片、异常处理及性能监控,帮助开发者显著提升数据下载效率,特别适合量化交易领域的数据采集需求。

weixin_30369041的博客 458

POI处理Word、Excel、PowerPoint

第一:下载POI,在http://jakarta.apache.org/poi/中,下载poi-bin-3.5-beta4-20081128.zip,解压后把jar包引入项目工程。 第二:处理Word(Word.java)import org.apache.poi.hwpf.extractor.WordExtractor;import java.io.Fil

tim_zhang8888的专栏 5183

OpenAI Realtime API实时语音交互实战指南

实时语音交互是人机自然对话的核心能力,其本质在于构建低延迟、双向、流式协同的音频-语义闭环。它突破传统REST API的请求-响应范式,依托WebSocket实现毫秒级音频输入流(audio.delta)、模型生成流(text/audio.delta)与动态控制流(session.update)三重并行。该技术显著降低端到端延迟至300ms以内,支撑语音助手、智能客服、对话式教育等强实时场景。本文聚焦OpenAI Realtime API的工程落地,详解PCM音频流处理、VAD语音活动检测、AudioCon

weixin_32285357的博客 393

Android中解析读取复杂word,excel,ppt等的方法

前段时间在尝试做一个Android里的万能播放器,能播放各种格式的软件,其中就涉及到了最常用的office软件。查阅了下资料,发现Android中最传统的直接解析读取word,excel的方法主要用了java里第三方包,比如利用tm-extractors-0.4.jar和jxl.jar等,下面附上代码和效果图。         读取word用了tm-extractors-0.4.jar包,代码如

卡小基的博客 2万+

MATLAB下pdf文件操作读取示例

当遇到一些需要大量数据的项目,数据的读取与储存显得尤为重要。怎样把数据从其他格式的文件中读取,并运用到程序中是很多时候我们要解决的问题。对于平常的.txt,和.xlsx文件,MATLAB有对应的函数帮助读取,但是遇到pdf文件时MATLAB很难读取内容。本文以一个操作实例提供了一个从pdf文件中读取数据的方法。

UESTC 五高考3模拟的博客 6559

数据结构课程设计C/C++版--美团餐馆预定信息的管理与分析 5 6

第5关:注销个人信息。

m0_62222486的博客 2128

Apache_POI_详细使用教程(Java)实现Excel、Word及PPT等文档处理功能

Apache POI是一个Java库,用于读写Microsoft Office格式文件。它支持Excel(.xls/.xlsx)、Word(.doc/.docx)、PowerPoint等多种文件格式,提供丰富的API操作单元格、样式、公式等。主要包含HSSF/XSSF(Excel)、HWPF/XWPF(Word)、HSLF/XSLF(PPT)等组件,可通过Maven或Gradle引入依赖。示例展示了如何创建Excel文件、设置单元格类型和样式,包括文本、数字、日期、公式等内容。POI广泛应用于Java办公自

qq_52506743的博客 3329

华为OD机试真题 新系统2026-04-08 Python&JS 实现【直捣黄龙】

小王在玩一款叫做直捣黄龙的小游戏,在该游戏中他需要从入口位置进入敌营,绕过哨兵的层层封锁,达到敌军司令部实施斩首行动。 敌军阵营是一个n*n的矩阵,入口在坐标(0,n/2),敌军司令部在坐标(n-1,n/2),每个哨兵警戒以自己为中心的9宫格,一旦被哨兵发现则行动失败。

MISAYAONE的博客 589

Java使用POI提取word, Excel, PPt, txt的文本内容及文件属性中的作者

Java使用POI提取word, Excel, PPt, txt的文本内容及文件属性中的作者 新公司实习的第一个任务,在网上查了一些博客后接触到了poi,它为Java提供API对Microsoft Office文件进行读写操作的功能。 可以在apache官网下载jar包http://poi.apache.org/download.html [外链图片转存失败(img-5kpmwLhA-156816...

qq_39380838的博客 4976

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Java:Java的jar包之POI的简介、安装、使用方法(基于POI将Word、Excel、PPT转换为html)之详细攻略

Java:Java的jar包之POI的简介、安装、使用方法(基于POI的转换—Word、Excel、Ppt等转html)之详细攻略 POI的简介 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。 1、基本功能 HSSF - 提供读写Microsoft Excel格式档案的功能。 XSSF - 提供读写MicrosoftExcelOOXML格式档案的功能。 HWPF - 提供读

头部AI社区如有邀博主AI主题演讲请私信—心比天高,仗剑走天涯,保持热爱,奔赴向梦想!低调,专注,谦虚,自律,反思,成长,还算比较正能量的博主,公益免费传播…内心特别想在AI界做出一些可以推进历史进程影响力的技术(兴趣使然,有点小情怀,也有点使命感呀 8109

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

JAVA读取WORD,EXCEL,POWERPOINT,PDF文件的方法

JAVA读取WORD,EXCEL,POWERPOINT,PDF文件的方法 http://blog.sina.com.cn/u/54c1567b010008vh OFFICE文档使用POI控件,PDF可以使用PDFBOX0.7.3控件,完全支持中文,用XPDF也行,不过感觉PDFBOX比较好,而且作者也在更新。水平有限,万望各位指正 WORD: import org.apache

ZKLxuankai的专栏 1342

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

Apache POI 是一个非常强大的 Java 库用于 Excel、Word 和 PowerPoint

Apache POI 是一个非常强大的 Java 库,用于读取和写入 Microsoft Office 格式的文件,包括 Excel、Word 和 PowerPoint。PowerPoint (HSLF 和 XSLF):用于读写 .ppt 和 .pptx 文件。Word (HWPF 和 XWPF):用于读写 .doc 和 .docx 文件。用途:用于读写 Microsoft PowerPoint .pptx 文件。用途:用于读写 Microsoft PowerPoint .ppt 文件。

qq_31839835的博客 1893

java poi word宏_全面了解POI操作Microsoft Office(Word、Excel、PowerPoint)

POI 与 Microsoft Office1. POI 简介POI 是 Apache 下的 Jakata 项目的一个子项目,主要用于提供 java 操作 MicrosoftOffice 办公套件如 Excel,Word,Powerpoint 等文件的 API.微软的Office 办公软件在企业的日常办公中占据着重要的地位,人们已经非常熟悉Office 的使用。在我们开发的应用系统中,常常需要将数...

weixin_28677903的博客 1202

java 读取ppt文件_java读取word-excel-ppt文件代码

java读取word-excel-ppt文件代码2019-05-08编程之家收集整理的这篇文章主要介绍了java读取word-excel-ppt文件代码,编程之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。WORD:import org.apache.lucene.document.Document;import org.apache.lucene.document.Field;impor...

weixin_29480659的博客 488

java读取ppt数据_java使用poi读取ppt文件和poi读取excel、word示例

Apache的POI项目可以用来处理MS Office文档,codeplex上还有一个它的.net版本。POI项目可创建和维护操作各种基于OOXML和OLE2文件格式的Java API。大多数MS Office都是OLE2格式的。POI通HSMF子项目来支持Outlook,通过HDGF子项目来支持Visio,通过HPBF子项目来支持Publisher。使用POI抽取Word简单示例:要引入poi-...

weixin_29378273的博客 570

java poi读取word、excel文档

从apache下载poi压缩包后将jar文件都导入。。。读取wordpackage com.yourcompany.struts; import java.io.*; import org.apache.poi.hwpf.*; import org.apache.poi.hwpf.extractor.WordExtractor; public class Word03Test { /**

mydreamongo的专栏 2031
上一篇: Java通过poi读取word,excel,ppt文件中文本(word部分)
下一篇: Java8 新特性 Lambda 表达式学习心得
RedKnife_
博客等级 码龄11年 0粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值