- 浏览: 994913 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (394)
- OSGI (14)
- 多线程 (10)
- 数据库 (30)
- J2ME (1)
- JAVA基础知识 (46)
- 引用包 (1)
- 设计模式 (7)
- 工作流 (2)
- Ubuntu (7)
- 搜索引擎 (6)
- QT (2)
- Ubuntu下编程 (1)
- 小程序 (2)
- UML (1)
- Servlet (10)
- spring (16)
- IM (12)
- 文档视频转为flash格式在线播放 (19)
- Maven (8)
- 远程调用 (2)
- PHPRPC (1)
- EXTJS学习 (2)
- Hibernate (16)
- 技术文章 (38)
- flex (5)
- 海量数据处理 (5)
- FTP (8)
- JS (10)
- Struts (1)
- hibernate search (13)
- JQuery (2)
- EMail (3)
- 算法 (4)
- SVN (7)
- JFreeChart (4)
- 面试 (4)
- 正规表达式 (2)
- 数据库性能优化 (10)
- JVM (6)
- Http Session Cookie (7)
- 网络 (12)
- Hadoop (2)
- 性能 (1)
最新评论
-
hy1235366:
能够随便也发一下,你退火算法程序使用的DistanceMatr ...
模拟退火算法总结(含例子)(转) -
梅强强:
感谢分享。。帮大忙了
swftools转换文件时线程堵塞问题的解决方法 -
wenlongsust:
openoffice和文件不在同一个服务器上,用过吗?
[JODConverter]word转pdf心得分享(转) -
2047699523:
如何在java Web项目中开发WebService接口htt ...
利用Java编写简单的WebService实例 -
abingpow:
唉,看起来好像很详细很不错的样子,可惜不是篇面向初学者的文章, ...
Spring与OSGi的整合(二)(转)
天在写全文检索功能时,POI读取Word2007和Excel2007文档时遇到问题,于是扩展了一下原来的功能,以下是使用POI读取Word2007和Excel2007的例子:
package com.test; /** * 需要的jar包: * poi-3.0.2-FINAL-20080204.jar * poi-contrib-3.0.2-FINAL-20080204.jar * poi-scratchpad-3.0.2-FINAL-20080204.jar * poi-3.5-beta6-20090622.jar * geronimo-stax-api_1.0_spec-1.0.jar * ooxml-schemas-1.0.jar * openxml4j-bin-beta.jar * poi-ooxml-3.5-beta6-20090622.jar * xmlbeans-2.3.0.jar * dom4j-1.6.1.jar */ 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.hssf.usermodel.HSSFCell; import org.apache.poi.hssf.usermodel.HSSFRow; import org.apache.poi.hssf.usermodel.HSSFSheet; import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.hwpf.extractor.WordExtractor; import org.apache.poi.openxml4j.exceptions.OpenXML4JException; import org.apache.poi.openxml4j.opc.OPCPackage; import org.apache.poi.xssf.usermodel.XSSFCell; import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.apache.poi.xwpf.extractor.XWPFWordExtractor; import org.apache.xmlbeans.XmlException; public class WordAndExcelExtractor { public static void main(String[] args){ try{ String wordFile = "D:/松山血战.docx"; String wordText2007 = WordAndExcelExtractor.extractTextFromDOC2007(wordFile); System.out.println("wordText2007======="+wordText2007); InputStream is = new FileInputStream("D:/XXX研发中心技术岗位职位需求.xls"); String excelText = WordAndExcelExtractor.extractTextFromXLS(is); System.out.println("text2003==========" + excelText); String excelFile = "D:/Hello2007.xlsx"; String excelText2007 = WordAndExcelExtractor.extractTextFromXLS2007(excelFile); System.out.println("excelText2007==========" + excelText2007); }catch(Exception e ){ e.printStackTrace(); } } /** * @Method: extractTextFromDOCX * @Description: 从word 2003文档中提取纯文本 * * @param * @return String * @throws */ public static String extractTextFromDOC(InputStream is) throws IOException { WordExtractor ex = new WordExtractor(is); //is是WORD文件的InputStream return ex.getText(); } /** * @Method: extractTextFromDOCX * @Description: 从word 2007文档中提取纯文本 * * @param * @return String * @throws */ public static String extractTextFromDOC2007(String fileName) throws IOException, OpenXML4JException, XmlException { OPCPackage opcPackage = POIXMLDocument.openPackage(fileName); POIXMLTextExtractor ex = new XWPFWordExtractor(opcPackage); return ex.getText(); } /** * @Method: extractTextFromXLS * @Description: 从excel 2003文档中提取纯文本 * * @param * @return String * @throws */ @SuppressWarnings("deprecation") private static String extractTextFromXLS(InputStream is) throws IOException { StringBuffer content = new StringBuffer(); HSSFWorkbook workbook = new HSSFWorkbook(is); //创建对Excel工作簿文件的引用 for (int numSheets = 0; numSheets < workbook.getNumberOfSheets(); numSheets++) { if (null != workbook.getSheetAt(numSheets)) { HSSFSheet aSheet = workbook.getSheetAt(numSheets); //获得一个sheet for (int rowNumOfSheet = 0; rowNumOfSheet <= aSheet.getLastRowNum(); rowNumOfSheet++) { if (null != aSheet.getRow(rowNumOfSheet)) { HSSFRow aRow = aSheet.getRow(rowNumOfSheet); //获得一行 for (short cellNumOfRow = 0; cellNumOfRow <= aRow.getLastCellNum(); cellNumOfRow++) { if (null != aRow.getCell(cellNumOfRow)) { HSSFCell aCell = aRow.getCell(cellNumOfRow); //获得列值 if(aCell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC){ content.append(aCell.getNumericCellValue()); }else if(aCell.getCellType() == HSSFCell.CELL_TYPE_BOOLEAN){ content.append(aCell.getBooleanCellValue()); }else { content.append(aCell.getStringCellValue()); } } } } } } } return content.toString(); } /** * @Method: extractTextFromXLS2007 * @Description: 从excel 2007文档中提取纯文本 * * @param * @return String * @throws */ private static String extractTextFromXLS2007(String fileName) throws Exception{ StringBuffer content = new StringBuffer(); //构造 XSSFWorkbook 对象,strPath 传入文件路径 XSSFWorkbook xwb = new XSSFWorkbook(fileName); //循环工作表Sheet for(int numSheet = 0; numSheet < xwb.getNumberOfSheets(); numSheet++){ XSSFSheet xSheet = xwb.getSheetAt(numSheet); if(xSheet == null){ continue; } //循环行Row for(int rowNum = 0; rowNum <= xSheet.getLastRowNum(); rowNum++){ XSSFRow xRow = xSheet.getRow(rowNum); if(xRow == null){ continue; } //循环列Cell for(int cellNum = 0; cellNum <= xRow.getLastCellNum(); cellNum++){ XSSFCell xCell = xRow.getCell(cellNum); if(xCell == null){ continue; } if(xCell.getCellType() == XSSFCell.CELL_TYPE_BOOLEAN){ content.append(xCell.getBooleanCellValue()); }else if(xCell.getCellType() == XSSFCell.CELL_TYPE_NUMERIC){ content.append(xCell.getNumericCellValue()); }else{ content.append(xCell.getStringCellValue()); } } } } return content.toString(); } }
这就是读取MS Office高版本的文档的方式。
发表评论
-
提取html内容放入xml文件时空格问题
2011-05-24 17:09 2592由于项目的需要,将网站上的信息抓取下来,提取出想要的信息,然后 ... -
简述URI和URL区别(转)
2011-04-20 16:23 1369URL:(Uniform Resoure Locato ... -
jsp页面乱码解决方案及编码设置问题(转)
2011-03-27 15:46 1804经常遇到关于JSP页面乱码的问题,在网上也查了相关的帖子,故在 ... -
使用JSTL标签异常
2011-01-02 09:48 1815我使用JSTL标签,如下所示: <c:when ... -
HSQL入门及使用指南 (转)
2010-12-27 22:29 2124HSQL可以到官方网站 ... -
SSH session连接关闭问题的解决(转)
2010-12-15 22:12 21002008-07-20 22:25:27,531 INF ... -
svn和myeclipse使用搜狗浏览器代理
2010-12-11 16:42 17821 在svn里的setting功能选项中选择Network,勾 ... -
Kissy Suggest 自动提示例子
2010-12-10 14:45 3776由淘宝团队开发出来的Kissy Suggest 自动提示组件是 ... -
计算机开机启动过程详解(转)
2010-12-10 13:22 13501、http://product.zdnet.com. ... -
更强的自动补全提示:提示补全组件:Kissy Suggest(转)
2010-12-09 16:25 1016去年针对谷歌的搜索提示,发过一篇文章:从谷歌的一个Bug说 ... -
磁盘分区与文件系统(转)
2010-12-09 09:38 2002一个磁盘是分成一个个扇区来存放信息,整个磁盘的第一个扇区是作 ... -
QQ通信原理(转)
2010-12-02 21:52 6621QQ通信原理我研究的是QQ ... -
邮件激活
2010-11-17 09:34 1418今天看了一下公司做的网站,看到有关邮件激活的程序,就做下笔记。 ... -
HttpSessionBindingListener获取在线用户数(转)
2010-11-01 14:59 2325下面为我的测试 ... -
cookie的简单使用
2010-10-29 11:13 1540一、cookie的作用 在 ... -
Cookie工作原理(转)
2010-10-29 09:30 1779Cookies基础 Cookies是 ... -
swfobject的使用
2010-10-26 09:54 31751 swfobject可以将swf文件嵌入到网页内,它是一个j ... -
java获取当前工程名(转)
2010-10-24 09:14 1581String projectname = System.get ... -
利用Java编写简单的WebService实例(转)
2010-10-22 15:30 2705/* * File name: TestHell ... -
利用Java编写简单的WebService实例
2010-10-22 14:55 86954使用Axis编写WebService比较简单,就我 ...
相关推荐
这是一个POI读取word 2003 和 word 2007的例子 是一个Eclipse工程 下载后直接导入工程 运行 src 目录下的 Test java 类即可 这个 rar 包中包含着 POI 读取word 2003 和 word 2007 所需要的 jar 包 也有需要读取的 ...
利用POI读取excel写入到word 利用POI读取excel写入到word 利用POI读取excel写入到word,压缩包里包含了jar包
使用Poi读取大数据量excel的方法 支持2003和2007的版本
POI 读取 WORD EXCEL POWERPOINT 2003 2007 java 读取 WORD EXCEL POWERPOINT 2003 2007
POI读取excel的例子
poi读取excel2007和2003兼容工具例子.利用简单工厂方法
POI读取word文档的文字内容和图片内容
java读写Excel,POI.JAR,Word内容读取
我给出了代码和所有的解释,用POI读取word中的页码。也算是小方法了,基本很准确,为什么要加一个基本呢?因为,分页标志符号在第一行为空白行的时候没有分页符!!所以你的文档如果有很多首段空白行的话,不要浪费C...
java 利用POI读取Word文件中的内容 java 利用POI读取Word文件中的内容
NULL 博文链接:https://53873039oycg.iteye.com/blog/2187388
使用poi读取excel内容 所需jar包
java.lang.NullPointerException at org.apache.poi.openxml4j.opc....在linux环境下poi读取word文件产生的NullPointerException,此问题找了两天最终解决。希望有同样问题的人能快速解决问题,所以上传此文档
JAVA读取WORD_EXCEL_POWERPOINT_PDF文件的方法(poi)
Java通过POI读取Excel遍历数据,根本word模板批量生成word文档,demo可运行,可根据需求修改
POI生成Excel POI读取Excel java操作Excel Servlet生成Excel web项目,包含含读取Excel与生成Excel方法
POI读取word文件内容 word格式包括doc,docx两种。
poi读取Exceljar包和例子 poi-2.5.1-final-20040804.jar poi-contrib-2.5.1-final-20040804.jar poi-scratchpad-2.5.1-final-20040804.jar ReadXL.java
之前用jxl发现不支持excel2007,不得以就去用poi实现excel的读取了!本人亲测的一个实例,支持excel2007!