Apache POI简明教程

背景:经常需要处理很多Excel表,提取其中的有效数据,有时也需要提取XML中的某些元素。之前一直都是手工处理很多表(100起步),直到......有一次手工花费1天半处理完大量数据后,部门一位姐姐突然改了需求:)。想到自己的时间被无故浪费,气(非)急(常)败(窝)坏(囊)的我下定决心,学习用脚本自动化来解决这些问题。

POI是Apache的一个开源项目,全名是Poor Obfuscation Implementation(好抽象什么意思???)。项目简介写的是the Java API for Microsoft Documents,它可以通过Java语言对PPT, Word, Excel, XML等等进行处理。因为我使用的是JDK1.7,所以以下教程将基于JDK1.7。


1.所需JAR包

由于POI 4.x版本需要JDK1.8起步,还在使用JDK1.7的我选择了POI 3.7,虽然不是最新的,但也够用了。以下是所需JAR包(除poi-3.7外的包为一些必须的依赖项,具体功能还没去调查,但不添加会报错),为了方便你我他,我打包好了放到百度云供大家下载。

链接: https://pan.baidu.com/s/1guKZIO_jXGT5dk5pnpK-Dg 提取码: zap8 

Apache POI简明教程_第1张图片

 

2.读取写入的Excel文件示例

POI对于xls和xlsx的支持都很好,下面以xlsx为例,展示POI读取和写入的示例代码(因为是简明教程,只展示读取和写入的代码)。

import java.io.File;
import java.io.FileOutputStream;

import org.apache.poi.hssf.usermodel.*
import org.apache.poi.ss.*


/**
 * Poi读取和写入Excel
 * 
 * @author hyx
 * 
 */
 
public class PoiDemo
{
   public static void main(String[] args) throws Exception
   {
	  /*
		读取文件操作
	  */
	  //创建文件路径
	  String filePath = "file\\before.xlsx";
	  //创建输入流
	  try{
		FileInputStream fis = new FileInputStream(filePath);
	  }catch(Exception e){
		e.printStackTracker();
	  }
          //创建工作薄
          Workbook workbook = new XSSFWorkbook(fis);
      
	  /*
	   对Excel进行操作
	  */
	  
	  /*
		写入文件操作
	  */
          //创建输出文件地址
          File xlsxFile = new File("file\\after.xlsx");
          //创建输出流
          FileOutputStream xlsxStream = new FileOutputStream(xlsxFile);
          //写入数据
          workbook.write(xlsxStream);
   }
}

 

你可能感兴趣的:(Apache POI简明教程)