java 專案利用POI匯出excel總結

2021-08-13 23:13:26 字數 2562 閱讀 7058

在專案中遇到需要把計畫檢修的專案匯出 使用的是apache poi對資料進行匯出

workbook workbook = new hssfworkbook(); //新建excel**

sheet sheet = workbook.createsheet("維修-檢修計畫詳情"); //新建工作簿

row row = sheet.createrow(0); //新建第一行為**表頭

row.createcell(0).setcellvalue("檢修記錄id");

row.createcell(1).setcellvalue("檢修單號");

row.createcell(2).setcellvalue("記錄**");

row.createcell(3).setcellvalue("所屬部門");

row.createcell(4).setcellvalue("部門名稱");

for (int i = 0

; list != null && i < list.size(); i++)

super.writeexcel("recordlist.xls", workbook);
這樣匯出的**完全沒有格式,無法進行列印

cellstyle cellstyle = workbook.createcellstyle();//新建單元格格式

cellstyle.setwraptext(true);//是否自動換行

cellstyle.setalignment(hssfcellstyle.align_left);//設定內容左對齊

cellstyle.setverticalalignment(hssfcellstyle.vertical_center);//設定垂直居中

intlength = row.getlastcellnum();

for (int j = 0; j < length; j++)

在實際使用中,列印時需要設定列印格式 橫版,頁邊距等需要一一設定,網上的資料很多,在這實現乙個需求,由於**內容過長需要分頁顯示那麼表頭在每一頁重複出現,需要使用setrepeatingrowsandcolumns( )方法

//五個引數分別是:第幾張工作表、開始列、結束列、開始行、結束行 這一區域即為表頭

workbook.setrepeatingrowsandcolumns(0, 0, 12, 1, 3);

這樣乙個** 這麼多格式感覺很麻煩這時候使用excel模板來匯出資料就顯得方便許多了使用模板就涉及到使用伺服器上傳的模板來填充資料

首先要獲取專案結構中的模板檔案,在實際獲取中遇到一些問題

使用separator來加入檔案路徑分隔符,避免出現linux系統和windows系統的路徑差異導致找不到檔案的錯誤windows和linux檔案路徑差異

比如要在temp目錄下新建乙個test.txt檔案  

//在windows中就需要這麼寫

file

file = new

file("c:\temp\test.txt");

//在linux中就需要寫

file file2 = new

file("/temp/test.txt");

//考慮跨平台性就需要使用separtor來代替名稱分隔符

file myfile = new

file("c:" + file.separator + "temp" + file.separator , "test.txt");

使用檔案輸入流來獲取workbook而不是新建workbook這樣就省去了設定格式的過程

在模板檔案中設定好表頭的內容和格式 以及列印設定 頁面設定

之後的過程和之前一樣省去了布局的大量時間 十分推薦使用 記得修改格式設定時不要單單修改本地模板,修改本地模板一定要記得重新上傳模板

java 利用POI 匯入匯出初步學習

一 hssf 97 2003 需要jar poi 3.9.jar 簡單示例 生成excel 93 2003 string titlie 建立excel工作簿 hssfworkbook workbook new hssfworkbook 建立乙個sheet頁 hssfsheet sheet workb...

利用poi匯出excel

最近接了乙個任務,要求把資料庫內容提取成excel,乙個excel動態建立多個sheet,乙個sheet裡面顯示一條資訊,然後再根據此條資訊的結果,再去子表獲取結果,如一條學生資訊,對應顯示該學生的所有詳細資訊。如圖所示 工程中匯入 public static void writeexcelnew ...

Java Web利用POI匯出Excel簡單例子

採用spring mvc架構 controller層 如下 controller public class studentexportcontroller service層 如下 service public class studentexportservice public hssfworkboo...