`
lhjsp
  • 浏览: 650 次
  • 性别: Icon_minigender_1
  • 来自: 成都
文章分类
社区版块
存档分类
最新评论

POI简单应用(word,excel)

阅读更多
POI简单应用(word,excel)
以前在一个OA项目里使用过POI包来导入导出过Excel,所以在此再回忆一遍,方便自己和大家以后使用。

POI可以让你使用Java来读写Excel、Word文件

要求:JDK 1.4 + POI开发包(可以到 http://www.apache.org/dyn/closer.cgi/jakarta/poi/ 下载)

相关的说明文档

官方网站: http://jakarta.apache.org/poi/

创建Excel 文档

示例1将演示如何利用Jakarta POI API 创建Excel 文档。

示例1程序如下:

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;
import java.io.FileOutputStream;

public class CreateXL {
 /** Excel 文件要存放的位置,假定在D盘下*/
 public static String outputFile="D:\\test.xls";

 public static void main(String argv[]){
  try{

   // 创建新的Excel 工作簿

   HSSFWorkbook workbook = new HSSFWorkbook();
 
   // 在Excel工作簿中建一工作表,其名为缺省值
     // 如要新建一名为"效益指标"的工作表,其语句为:
     // HSSFSheet sheet = workbook.createSheet("sheet1");

   HSSFSheet sheet = workbook.createSheet();

   // 在索引0的位置创建行(第一行)

   HSSFRow row = sheet.createRow((short)0);

   //在索引0的位置创建单元格(第一列)
   HSSFCell cell = row.createCell((short) 0);
   // 定义单元格为字符串类型(Excel-设置单元格格式-数字-文本;不设置默认为“常规”,也可以设置成其他的,具体设置参考相关文档)
   cell.setCellType(HSSFCell.CELL_TYPE_STRING);
    // 在单元格中输入一些内容
    cell.setCellValue("你要输入的内容");
    // 新建一输出文件流
    FileOutputStream fOut = new FileOutputStream(outputFile);
    // 把相应的Excel 工作簿存盘
    workbook.write(fOut);
    fOut.flush();
    // 操作结束,关闭文件
    fOut.close();
    System.out.println("文件生成 ");

   }catch(Exception e) {
    System.out.println("已运行 xlCreate() : " + e );
   }
  }
}


读取Excel文档中的数据

示例2将演示如何读取Excel文档中的数据

示例2程序如下:

import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;
import java.io.FileInputStream;

public class ReadXL {
  /** Excel文件的存放位置。注意是正斜线*/
  public static String fileToBeRead="D:\\test1.xls";
 
  public static void main(String argv[]){
   try{
    // 创建对Excel工作簿文件的引用
    HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileToBeRead));
    // 创建对工作表的引用。
    // 本例是按名引用(让我们假定那张表有着缺省名"Sheet1")
    HSSFSheet sheet = workbook.getSheet("Sheet1");
    // 也可用getSheetAt(int index)按索引引用,
    // 在Excel文档中,第一张工作表的缺省索引是0,
    // 其语句为:HSSFSheet sheet = workbook.getSheetAt(0);
    // 读取左上端单元
    HSSFRow row = sheet.getRow(0);
    HSSFCell cell = row.getCell((short)0);
    // 输出单元内容,cell.getStringCellValue()就是取所在单元的值
    System.out.println("左上端单元是: " + cell.getStringCellValue());
   }catch(Exception e) {
    System.out.println("已运行xlRead() : " + e );
   }
  }
}



1、创建字体,设置其为红色、粗体:
HSSFFont font = workbook.createFont();
font.setColor(HSSFFont.COLOR_RED);
font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);

2、创建格式
HSSFCellStyle cellStyle= workbook.createCellStyle();
cellStyle.setFont(font);

3、应用格式
HSSFCell cell = row.createCell((short) 0);
cell.setCellStyle(cellStyle);
cell.setCellType(HSSFCell.CELL_TYPE_STRING);
cell.setCellValue("标题"); 

处理word文档
import java.io.*;
import org.textmining.text.extraction.WordExtractor;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFCell;

public class TestPoi {
public TestPoi() {
}
public static void main(String args[]) throws Exception
{
FileInputStream in = new FileInputStream ("D:\\a.doc");
WordExtractor extractor = new WordExtractor();
String str = extractor.extractText(in);
//System.out.println("the result length is"+str.length());
System.out.println(str);
}
}


补充:其实上面的导入导出,只要灵活应用,结合if ()和for()可以达到很好的效果。
分享到:
评论

相关推荐

    poi-bin-3.10-beta2-20130904.zip

    HSSF Excel XLS poi HSLF PowerPoint PPT poi-scratchpad HWPF Word DOC poi-scratchpad HDGF Visio VSD poi-scratchpad HPBF Publisher PUB poi-scratchpad HSMF Outlook MSG poi-scratchpad XSSF Excel XLSX...

    Jakata Poi HSSF:纯java的Excel解决方案

    微软在桌面系统上的成功,令我们不得不大量使用它的办公产品,如:Word,Excel。时至今日,它的源代码仍然不公开已封锁了我们的进一步应用和开发。HSSF提供给用户使用的对象在org.apache.poi.hssf.usermodel包中,...

    Android 本地预览Excel,Word,PPT,PDF 源代码

    Android 本地预览Excel,Word,PPT,PDF 解决Android asposed转Excel乱码问题 带有Jar包

    Apache的POI开发实例

    Apache的POI组件是Java操作Microsoft Office办公套件的强大API,其中对Word,Excel和PowperPoint都有支持,当然使用较多的还是Excel,因为Word和PowerPoint用程序动态操作的应用较少。那么本文就结合POI来介绍一下...

    在Excel中插入Word文档de方法

    有没有一种办法可以把Word文档插入到Excel电子表格中?回答当然是肯定的。Office系列软件的一大优点就是能够互相协同工作,不同的应用程序之间可以方便地进行内容交换。使用Excel中的插入对象功能,就可以很容易地在...

    poi-4.1.3(JAVA读写Office文档的API)

    Apache软件基金会用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程序对Microsoft Office...这里提供的poi4.1.3版本,虽然不是正式发行版本,但解决了4.1.2的很多bug,我本人已经应用于实际项目中。

    Java_Web开发实战1200例第1卷.part2

    20.3 应用POI组件导出到Word 772 第21章 JSP操作Excel 775 21.1 应用JXL组件操作Excel 776 21.2 应用POI组件操作Excel 807 第22章 报表与打印 829 22.1 Web打印 830 22.2 利用Word打印报表 833 22.3 利用Excel打印...

    Java_Web开发实战1200例第1卷.part3

    20.3 应用POI组件导出到Word 772 第21章 JSP操作Excel 775 21.1 应用JXL组件操作Excel 776 21.2 应用POI组件操作Excel 807 第22章 报表与打印 829 22.1 Web打印 830 22.2 利用Word打印报表 833 22.3 利用Excel打印...

    freemarker生成复杂word

    在Web应用中,有时需要按照固定的模板将数据导出到Word,如流程审批单,在流程处理完成后将处理过程按照流程单的要求导出,有时程序中需要实现生成标准Word文档,要求能够打印,并且保持页面样式不变,常见的方案有...

    SOAOFFICE - 微软 OFFICE 中间件

    SOAOffice除了提供Word/Excel动态数据填充,Word/Excel数据导入导出,Word/Excel/PowerPoint等Office文档的在线打开、编辑、保存,权限控制,只读控制等功能外,还给在线办公内置了强大的支持功能:强制痕迹保留,...

    NPOI Excel导入导出

    NPOI 是开源的 POI 项目的.NET版,可以用来读写Excel,Word,PPT文件。在处理Excel文件上,NPOI 可以同时兼容 xls 和 xlsx。官网提供了一份 Examples,给出了很多应用场景的例子,打包好的二进制文件类库,也仅有几...

    NPOI 2.3.0.0.rar

    它构建在POI 3.x版本之上,可以在没有安装Office的情况下对Word/Excel文档进行读写操作。NPOI有着强大的导入和导出功能,尤其是支持OLE2文档结构,使得它能够“理解”Excel文档,而不仅仅是读写表面的数据。这使得...

    C#读写excel文件NPOI库.7z

    NPOI是开源的POI项目的.NET版,可以用来读写Excel,Word,PPT等文件。在处理Excel文件上,NPOI 可以同时兼容 xls 和 xlsx。官网提供了一份 Examples,给出了很多应用场景的例子,打包好的二进制文件类库,也仅有几MB...

    PDF-Word-Count-Ver-3:旨在搜索目录及其子目录以查找 PDF 文档的应用程序。 然后,该应用程序会计算每个文档中的单词数、句子数以及在每个 PDF 文档中找到给定词典中的每个单词的次数。 然后将结果保存在 results.xls 文件中

    然后将结果保存在 results.xls 文件中使用的库Apache PDFBox 处理 PDF 文档 (pdfbox-1.8.7.jar) Apache POI对excel文件进​​行操作(poi-3.10.1-20140818.jar) 斯坦福 CoreNLP 分析 PDF 文档中的文本 (stanford-...

    pageoffice工具包

    PageOffice目前支持的Web编程语言及架构有:Java(JSP...有用POI库的,代码复杂、只能读写格式简单的Word、Excel文档,并且POI提供的Office2003、Office2007文档格式的调用接口还不兼容,进一步增加了调用代码的复杂度。

    Java学习指南16 项目应用篇

    * Excel 表格处理 ( POI ) * Word 文档处理 ( POI ) * 二维码的生成和解析 ( QRCode ) * 图片处理 * 视频处理 * 本地程序调用技术 * 连接WEB服务器 ( HTTP Client ) * 连接FTP服务器 ( FTP Client ) * 发送...

    JAVA办公自动化系统的设计

    文档处理模块:该模块可以打开、编辑、保存各种类型的文档,例如Word、Excel、PPT等,同时还可以设置文档样式、插入图片、表格等。 表格编辑模块:该模块可以创建、编辑各种类型的表格,例如Excel表格、Access...

    研究论文-JAVA环境下的JP数据导出方法.pdf

    针对传统数据导出方法存在处理文档不统一、执行时间长、实现复杂、同步性差等问题,提出运用外观模式,把处理Word文档的JACOB包和处理Excel文档的POI包封装起来,组成一个新的JP类包,并阐述该JP类包封装的具体过程...

    基于Java和Python的爬虫项目实战源码.zip

    POI读写Excel、Word、PPT文件 POI-HSMF读写Outlook POI-HDGF读写Visio POI-HPBF支持Publisher 其他文件 多媒体内容抽取: 抽取视频内容 视频内容一般分为四部分:帧、镜头、情节和节目 关键帧的提取---动态规则策略...

    Java毕业设计-JAVA办公自动化系统(源代码+论文+外文翻译).rar

    3. **Apache POI**:一个用于操作Microsoft Office文档的Java库,支持创建、读取和修改Excel、Word、PowerPoint等文件。 4. **Quartz**:一个功能丰富的任务调度库,支持定时任务、集群和持久化。 5. **Redis**:一...

Global site tag (gtag.js) - Google Analytics