EasyPOI
EasyPOI 的目的是封裝了poi的寫excel的API。
easypoi使用poi3.7開發,提供了更直觀易用的常用方法。主要支持以下的功能:
- 實現類似jQuery的鏈式調用方式
- 只支持xls格式,可以加載已存在的xls文件作為模板
- 提供了行編輯器、列編輯器和區域編輯器,可以一次操作一行、一列或一個區域的值或樣式
- 可設置的樣式包括:邊框大小、顏色;背景色;字體大小、顏色、粗體、斜體、刪除線、斜體等;數據格式;單元格寬高;對齊方式……等
- 設置打印樣式、設置密碼、按行或按列分組
- 插入圖片、批注、公式
詳情請參考API文檔和例子 一個簡單的例子:
public class HelloWord { public static void main(String[] args) { Object[] val = new Object[]{"插入一行數據",123,'A',Math.PI,new Date(), "hello"};Excel excel = new Excel(); excel.cell(0, 0) //選擇第一個單元格 .value("Hello World!")//寫入值 .align(Align.CENTER)//設置水平對齊方式 .bgColor(Color.LIGHT_YELLOW)//設置背景色 .height(30)//設置高度 .font(new IFontEditor(){//設置字體 public void updateFont(Font font) { font.boldweight(BoldWeight.BOLD);//粗體 font.color(Color.BROWN);//字體顏色 } }); excel.region(0, 0, 0, 10).merge();//合并第一行10個單元格 excel.region("$A$2:$K$2").merge();//也可以這樣選取區域 excel.row(2)//選擇第3行 .value(val)//寫入數據 .addWidth(2000)//增加寬度 .borderOuter(BorderStyle.DASH_DOT_DOT, Color.CORAL);//設置外邊框樣式 excel.row(4,1)//選擇第5行,但忽略第1個單元格,從第2個單元格開始操作 .value(val) .borderFull(BorderStyle.DASH_DOT, Color.RED);//設置全部邊框 excel.row(6)//選擇第7行 .value(val, 2)//從第3個單元格開始寫入數據 .borderTop(BorderStyle.THIN, Color.BLUE);//只設置上邊框 excel.column(11) .value(val)//也可以操作一列 .align(Align.CENTER) .borderFull(BorderStyle.THICK, Color.CORNFLOWER_BLUE)//設置全部邊框 .autoWidth();//根據內容長度,自動調整列寬 excel.cell(7, 0).value("=IF(B3=123,\"等于\",\"不等于\")");//寫入Excel函數 excel.cell(7, 1).value(0.578923).dataFormat("0.00%");//設置數據格式 excel.cell(7, 2).value(0.578923, "0.00%");//也可以這樣設置數據格式 //插入一張圖片 excel.region(8, 0, 10, 1).image("http://poi.apache.org/resources/images/group-logo.jpg"); excel.sheet().freeze(1, 0)//凍結第一行 .sheetName("這是第一個表");//重命名當前處于工作狀態的表的名稱 //設置單元格備注 excel.cell(8, 5).value("這個單元格設置了備注").comment("這是一條備注"); //操作第二個表 excel.setWorkingSheet(1).sheetName("第二個表");//把第二個表設置為工作狀態,并改名 excel.row(0).value(val);//第二個表寫入數據 excel.sheet().groupColumn(0, 3);//按列分組 excel.saveExcel("E:/temp/excel/helloworld.xls"); }
}</pre>
本文由用戶 fmms 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!