Apache的POI网址 : http://poi.apache.org/index.html

现在Apache的POI已经可以做到操作2007版的 xlsx 的副挡名格式,

需要的Jar挡包含了(目前下载了3.10的Beta版)

1. poi-3.10-beta2.jar

以上单独的档案可以直接操作副档名为xls的档案,

2. poi-ooxml-3.10-beta2.jar

3. xmlbeans-2.3.0.jar

4. stax-api-1.0.1.jar

5. dom4j-1.6.1.jar

以上四个档案必须要都包含才可以操作xlsx的档案。

 

Apache 的Examples 网址 : http://poi.apache.org/spreadsheet/examples.html

 

一、新建档案 :

  1. 副档名XLS档案

    Workbook wb = new org.apache.poi.hssf.usermodel.HSSFWorkbook();
    FileOutputStream fileOut = new FileOutputStream("workbook.xls");
    wb.write(fileOut);
    fileOut.close();

  2. 副档名XLSX档案

    Workbook wb = new org.apache.poi.xssf.usermodel.XSSFWorkbook();
    FileOutputStream fileOut = new FileOutputStream("workbook.xls");
    wb.write(fileOut); 
    fileOut.close();

二、 读取Excel档案:

  1. 不需判断档案 :

//透过File取得档案的方式是比FileInputStream使用更少的memory
     //透过WorkbookFactory是最简单的方式
     Workbook wb = WorkbookFactory.create(new File("MyExcel.xls"));
     Workbook wb = WorkbookFactory.create(new FileInputStream("MyExcel.xls"));

  2. XLS 档案 :

     //如果要使用HSSFWorkbook 的话
     //File
     NPOIFSFileSytem fs = new NPOIFSFileSystem(new File("file.xls"));
     HSSFWorkbook wb = new HSSFWorkbook(fs.getRoot());
     //FileInputStream
     NPOIFSFileSytem fs = new NPOIFSFileSystem(myInputStream);
     HSSFWorkbook wb = new HSSFWorkbook(fs.getRoot());

  3. XLSX档案 :

     //如果要使用XSSFWorkbook的话
     //File
     OPCPackage pkg = OPCPackage.open(new File("file.xlsx"));
     XSSFWorkbook wb = new XSSFWorkbook(pkg);
     //FileInputStream
     NPOIFSFileSytem fs = new NPOIFSFileSystem(myInputStream);
     HSSFWorkbook wb = new HSSFWorkbook(fs.getRoot());
     

     pkg.close();






相关文章