一、POI概述

Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读写的功能。

结构

  • HSSF - 提供读写Microsoft Excel格式档案的功能。
  • XSSF - 提供读写Microsoft Excel OOXML格式档案的功能。
  • HWPF - 提供读写Microsoft Word格式档案的功能。
  • HSLF - 提供读写Microsoft PowerPoint格式档案的功能。
  • HDGF - 提供读写Microsoft Visio格式档案的功能。

使用时必须引用maven依赖

  1. <dependency>
  2. <groupId>org.apache.poi</groupId>
  3. <artifactId>poi</artifactId>
  4. <version>3.17</version>
  5. </dependency>

二、HSSF概况

  HSSF 是Horrible SpreadSheet Format的缩写,通过HSSF,你可以用纯Java代码来读取、写入、修改Excel文件。HSSF 为读取操作提供了两类API:usermodel和eventusermodel,即“用户模型”和“事件-用户模型”。

三、 POI EXCEL文档结构类

  • HSSFWorkbook excel文档对象
  • HSSFSheet excel的sheet
  • HSSFRow excel的行
  • HSSFCell excel的单元格
  • HSSFFont excel字体
  • HSSFName 名称
  • HSSFDataFormat 日期格式
  • HSSFHeader sheet头
  • HSSFFooter sheet尾
  • HSSFCellStyle cell样式
  • HSSFDateUtil 日期
  • HSSFPrintSetup 打印
  • HSSFErrorConstants 错误信息表

    四、使用

    xls格式使用HSSFWorkbook,xlsx格式使用XSSFWorkbook
 POIFSFileSystem fs=newPOIFSFileSystem(new FileInputStream("d:/test.xls")); 
 //得到Excel工作簿对象 
 XSSFWorkbook wb = new HSSFWorkbook(fs); 
 //得到Excel工作表对象 
 XSSFSheet sheet = wb.getSheetAt(0); 
 //得到Excel工作表的行 
 XSSFRow row = sheet.getRow(i); 
 //得到Excel工作表指定行的单元格 
 XSSFCell cell = row.getCell((short) j); 
 cellStyle = cell.getCellStyle();//得到单元格样式