那么我们怎么使用POI呢?POI的使用其实非常简单,都不用我们安装,我们只需要用它的几个jar包就可以了。接下来我就一步一步图文说一下如何使用POI。

第一步:下载压缩包

        到官网http://poi.apache.org/download.html#archive下载POI的压缩包,如下图所示,poi-bin-3.15-20160924.zip是Windows系统所用到的包,poi-bin-3.15-20160924.tar.gz是Linux系统所需要的包。我们下载Windows系统下所需要的poi-bin-3.15-20160924.zip。

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载

第二步:解压并查看都有哪些Jar包

2.1 我们解压第一步下载的压缩包,解压后是名为poi-3.15的文件夹。

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_02

2.2 我们进入到poi-3.15文件夹下,我们可以看到有lib、ooxml-lib文件夹(这两个文件夹里面也是jar包)以及以poi开头的一些jar包,我们需要所有的jar包。

java中用poi的jar包下载 poi的jar包安装_User_03

第三步:工程中导入jar包

3.1 我用的是Java EE,Java EE使用外部包的话,最好使用User Library的方式,因为直接建lib包并导入jar包并包含到项目中的话,jar包的排版特别难看。那么怎么新建一个User Library呢,我们点"Window"然后点"Preferences",如下图所示。

java中用poi的jar包下载 poi的jar包安装_apache_04

      点击上图的"Preferences"之后,会进入到如下图所示的界面,我们在搜索框中输入"User Libraries"就会搜到在Java的Build Path下面有User Libraries,我们点击它,就会看到图右侧的内容(当然,刚开始是没有poiJar和hadoopJar的,这是我建好的),我们点击"New...",然后输入要新建的User Library的名字,我起的名字是poiJar。建好了Library之后就是向里面添加jar包,我们点击"Add External JARs..."按钮,在弹出的对话框中选择我们在第二步中提到的lib、ooxml-lib文件夹下的所有jar包,以及与lib文件夹同级的所有以poi开头的jar包,都添加到poiJar当中去。

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_05

3.2 弄好了poiJar之后,我们就让工程引用一下该poiJar,方法是我们在工程上右键--------->点击"Build Path"-------->点击"Configure Build Path....",如下图所示。

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_06

  点击上图的“Configure Build Path...."之后,我们会看到如下图所示的界面,刚开始只有JRE System Library,如下图所示。我们要添加Library,点击"Add Library..."

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_07

    我们会看到如下图所示,我们点击”User Library“。然后点击“Next”

java中用poi的jar包下载 poi的jar包安装_apache_08

接下来我们会看到如下图所示的界面,我们勾选上poiJar,然后点击"Finish"

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_09

  接下来我们会看到如下图所示的界面,我们可以看到poiJar下面有很多jar包了。我们点击"OK"。

 

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_10

   点击"OK"之后,我们再看看我们的工程下面就多了一个外部Library,poiJar下面是我们所要用到的所有POI的jar包。

java中用poi的jar包下载 poi的jar包安装_User_11

第四步:使用POI

导好了jar包,接下来我们便用一个例子来测试一下POI是否可用,我新建了一个叫TestPOI的类,在该类中使用我们POI的功能,向D盘根目录生成一个Excel文件。


package com.test; 

 

  import java.io.FileOutputStream; 

 

  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; 
 

  public class TestPOI { 
 
  @SuppressWarnings("resource") 
 
  public static void main(String[] args) throws Exception { 
 
     //创建工作簿---->XSSF代表10版的Excel(HSSF是03版的Excel) 
 
     XSSFWorkbook wb = new XSSFWorkbook(); 
 
     //工作表 
 
     XSSFSheet sheet = wb.createSheet("会员列表"); 
 
     //标头行,代表第一行 
 
     XSSFRow header=sheet.createRow(0); 
 
     //创建单元格,0代表第一行第一列 
 
     XSSFCell cell0=header.createCell(0); 
 
     cell0.setCellValue("会员级别"); 
 
     header.createCell(1).setCellValue("会员编号"); 
 
     header.createCell(2).setCellValue("会员姓名");   
 
     header.createCell(3).setCellValue("推荐人编号"); 
 
     header.createCell(4).setCellValue("负责人编号");   
 
     header.createCell(5).setCellValue("地址编号"); 
 
     header.createCell(6).setCellValue("注册时间"); 
 
     //设置列的宽度 
 
     //getPhysicalNumberOfCells()代表这行有多少包含数据的列 
 
     for(int i=0;i<header.getPhysicalNumberOfCells();i++){ 
 
      //POI设置列宽度时比较特殊,它的基本单位是1/255个字符大小, 
 
      //因此我们要想让列能够盛的下20个字符的话,就需要用255*20 
 
      sheet.setColumnWidth(i, 255*20); 
 
     } 
 
     //设置行高,行高的单位就是像素,因此30就是30像素的意思 
 
     header.setHeightInPoints(30); 
 
     //上面设置好了内容,我们当然是要输出到某个文件的,输出就需要有输出流 
 
     FileOutputStream fos= new FileOutputStream("d:/2010.xlsx"); 
 
     //向指定文件写入内容 
 
     wb.write(fos); 
 
     fos.close();   
 
     } 
 
 }

运行上面的程序,我们再到D盘根目录下看一下是否有我们要生成的2010.xlsx文件,我们发现确实已经正常生成,如下图所示。

java中用poi的jar包下载 poi的jar包安装_apache_12

我们打开2010.xlsx文件,看生成的内容是否正确,发现生成的内容包括行高都符合我们设定的值,完全没问题!

java中用poi的jar包下载 poi的jar包安装_java中用poi的jar包下载_13

好了,以上便是POI的简单应用了。