JAVA POI 應用系列(1)--生成Excel

POI簡介(官網:http://poi.apache.org/java


    Apache POI是Apache軟件基金會的開放源碼函式庫,POI提供API給Java程序對Microsoft Office格式檔案讀和寫的功能。自2009-09-28後,推出了3.5版本,提供了對Office2007的支持;spring

 

關於Apache POI一些重要的地方:apache


1)Apache POI 包含適合Excel97-2007(.xls文件)的HSSF實現.
2)Apache POI XSSF實現用來處理Excel2007文件(.xlsx).
3)Apache POI HSSF和XSSF提供了讀/寫/修改Excel表格的機制.
4)Apache POI 提供了XSSF的一個擴展SXSSF用來處理很是大的Excel工做單元.SXSSF API須要更少的內存,所以當處理很是大的電子表格同時堆內存又有限時,很合適使用.
5)有兩種模式可供選擇--事件模式和用戶模式.事件模式要求更少的內存,由於用tokens來讀取Excel並處理.用戶模式更加面向對象而且容易使用,所以在咱們的示例中使用用戶   模式.
6)Apache POI爲額外的Excel特性提供了強大支持,例如處理公式,建立單元格樣式--顏色,邊框,字體,頭部,腳部,數據驗證,圖像,超連接等.  maven

 

 

 

 添加maven依賴:測試

 

 1 <!--  操做excel,doc... -->
 2     <dependency>  
 3     <groupId>org.apache.poi</groupId>  
 4     <artifactId>poi</artifactId>  
 5     <version>3.10-FINAL</version>  
 6 </dependency>  
 7     <dependency>  
 8     <groupId>org.apache.poi</groupId>  
 9     <artifactId>poi-ooxml</artifactId>  
10     <version>3.10-FINAL</version>  
11 </dependency>

 

代碼以下:字體

 

 1 package com.yanwu.www.spring_hibernate.util;
 2 
 3 import java.io.FileOutputStream;
 4 import java.io.IOException;
 5 
 6 import org.apache.poi.hssf.usermodel.HSSFCell;
 7 import org.apache.poi.hssf.usermodel.HSSFCellStyle;
 8 import org.apache.poi.hssf.usermodel.HSSFRow;
 9 import org.apache.poi.hssf.usermodel.HSSFSheet;
10 import org.apache.poi.hssf.usermodel.HSSFWorkbook;
11 
12 public class SimpleExcelWrite{
13     
14     public static void main(String[] args) {
15         
16         //第一步建立workbook  
17         HSSFWorkbook wb = new HSSFWorkbook();  
18           
19         //第二步建立sheet  
20         HSSFSheet sheet = wb.createSheet("測試");  
21           
22         //第三步建立行row:添加表頭0行  
23         HSSFRow row = sheet.createRow(0);  
24         HSSFCellStyle  style = wb.createCellStyle();      
25         //style.setAlignment(HSSFCellStyle.ALIGN_CENTER);  //居中  
26           
27           
28         //第四步建立單元格  
29         HSSFCell cell = row.createCell(0); //第一個單元格  
30         cell.setCellValue("姓名");  
31         cell.setCellStyle(style);  
32         
33         
34         
35         cell = row.createCell(1);         //第二個單元格     
36         cell.setCellValue("年齡");  
37         cell.setCellStyle(style);  
38           
39        
40         //第五步插入數據  
41        
42         for (int i = 0; i < 5; i++) {  
43             //建立行  
44             row = sheet.createRow(i+1);  
45             //建立單元格而且添加數據  
46             row.createCell(0).setCellValue("aa"+i);  
47             row.createCell(1).setCellValue(i);  
48             
49         }  
50           
51         //第六步將生成excel文件保存到指定路徑下  
52         try {  
53             FileOutputStream fout = new FileOutputStream("C:\\Users\\IBM_ADMIN\\Desktop\\promotion\\a.xls");  
54             wb.write(fout);  
55             fout.close();  
56         } catch (IOException e) {  
57             e.printStackTrace();  
58         }  
59           
60         System.out.println("Excel文件生成成功...");  
61     }  
62       
63 
64         
65     }
66     
67     
68     
69     

 

效果:spa

 

相關文章
相關標籤/搜索