Java POI 操作Excel总结笔记--使用配置和使用案例篇


 

 软件151田杰中

 

最近用POI做了一段时间的报表和Excel导入导出,主要就是对HSSFWorkbook,HSSFSheet,HSSFRow, HSSFCell的操作了,掌握了对这四个东西的控制,你想怎么写就怎么写。

 基本配置和使用说明:

  1. 其实JAVA在处理Window OLE 2复合文档格式操作的API,还有很多POI、JExcelApi、IText等,而在实际的个人感觉POI确实是一个不错的选择。下面就POI开发的相关内容进行简要的介绍下,包括POI组成、开发步骤、具体示例、知识点汇总等内容进行讲解。POI组成   
  2. POI组成   
  3. 官方网站: <a href="http://jakarta.apache.org/poi/">http://jakarta.apache.org/poi/</a>,这个是POI的官方网站,用户可以先从这里下载。最新的版本3.7,下载解压后里面有三个jar包  
  4. (poi-3.7-FINAL-20080204.jar/  
  5.  poi-contrib-3.7-FINAL-20080204.jar/  
  6.  poi-scratchpad-3.7-FINAL-20080204.jar),  
  7. 而在这里包中主要含:   
  8. org.apache.poi.hssf.eventmodel 处理在读取和写入Excel文档中生成的各种动作.   
  9. org.apache.poi.hssf.eventusermodel 提供读取Excel文档的各个类.   
  10. org.apache.poi.hssf.record.formula 包含公式处理类, 这些类使用在Excel文档中.   
  11. org.apache.poi.hssf.usermodel 包含生成Excel文档的各个类.   
  12. org.apache.poi.hssf.util 提供处理Excel文档各个属性的工具类.   
  13. 开发步骤   
  14. 1:先下载POI包;   
  15. 2:解压后将里面的3个jar文件拷贝至WEB-INF\lib中。   
  16. 3:刷新工程后,即可以使用jar包中的内容了。   
  17.   
  18.  读取POI文档   
  19. 一:以文件名创建一个InputStream   
  20. 二:以上面的InputStream实例创建一个HSSFWorkbook.   
  21. 三:HSSFWorkbook的getSheetAt(index)可获取相应的工作页   
  22. 四:工作页调用方法获取行   
  23. 五:行再获取相应的格,调用单元格的方法,然后取出对应数据。  
  24. 简单配置简介完毕!  


 

使用Demo 案例一:

    1. // 使用Java POI  
    2. // 把要两个JAR文件放到lib/ext下  
    3. // code run against the jakarta-poi-1.5.0-FINAL-20020506.jar.  
    4. //  and commons-logging-1.0.jar  
    5. 例子程序:  
    6. import org.apache.poi.hssf.usermodel.*;  
    7. import java.io.FileOutputStream;  
    8.   
    9. // code run against the jakarta-poi-1.5.0-FINAL-20020506.jar.  
    10. //  and commons-logging-1.0.jar  
    11. public class PoiTest {  
    12.   
    13. static public void main(String[] args) throws Exception {  
    14.   
    15.  FileOutputStream fos = new FileOutputStream("d:\foo.xls");  
    16.  HSSFWorkbook wb = new HSSFWorkbook();  
    17.  HSSFSheet s = wb.createSheet();  
    18.  wb.setSheetName(0, "Matrix");  
    19.  for(short i=0; i<50; i++) {  
    20.  HSSFRow row = s.createRow(i);  
    21.  for(short j=0; j<50; j++) {  
    22.  HSSFCell cell = row.createCell(j);  
    23.  cell.setCellValue(""+i+","+j);  
    24.  }  
    25.  }  
    26.  wb.write(fos);  
    27.  fos.close();  
    28. }  
    29. }   


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM