java匯出Excel表格
阿新 • • 發佈:2018-12-18
直接貼上程式碼
/** * * @Title: createExcel * @Description: 傳入屬性值,生成Excel表格 * @author mzl * @param entyList * @param response * @throws */ private static void createExcel(List<List<String[]>> entyList,HttpServletResponse response) { // 建立一個Excel檔案 HSSFWorkbook workbook = new HSSFWorkbook(); // 建立一個工作表 HSSFSheet sheet = workbook.createSheet("文物列表資訊"); // 設定單元格格式居中 HSSFCellStyle cellStyle = workbook.createCellStyle(); cellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 1.生成字型物件 HSSFFont font = workbook.createFont(); font.setFontHeightInPoints((short) 18); font.setFontName("新宋體"); font.setColor(HSSFColor.RED.index); font.setBoldweight((short) 0.8); // 2.生成樣式物件 HSSFCellStyle style = workbook.createCellStyle(); style.setAlignment(HSSFCellStyle.ALIGN_CENTER); style.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER); style.setFont(font); // 新增資料內容 int i=0; for(List<String[]> _enty:entyList){ HSSFRow hssfRow = sheet.createRow(i); int j=0; for(String[] entry : _enty){ // 建立單元格,並設定值 HSSFCell cell = hssfRow.createCell(j); cell.setCellValue(entry[1]);//之前使用長度為2的陣列來裝值,第一個裝欄位名稱、第二個裝欄位值,故這裡獲取entry[1]的值 if(i==0){//設定第一行,每一個單元格的屬性及表頭屬性名稱 cell.setCellStyle(style);//設定表格樣式 sheet.autoSizeColumn(j);//設定第幾列 sheet.setColumnWidth(j,sheet.getColumnWidth(j)*17/10);//設定列寬 }else{ cell.setCellStyle(cellStyle); } j++; } i++; } try { response.setHeader("Content-disposition", "attachment; filename=Relic.xls"); response.setContentType("application/msexcel"); workbook.write(response.getOutputStream()); workbook.close(); } catch (Exception e) { e.printStackTrace(); } }
該功能實現用到了poi的jar包,相關jar包下載,或者直接maven下載即可。
POI簡介:Jakarta POI 是一套用於訪問微軟格式文件的Java API。Jakarta POI有很多元件組成,其中有用於操作Excel格式檔案的HSSF和用於操作Word的HWPF,在各種元件中目前只有用於操作Excel的HSSF相對成熟。
現在用的比較多的都是用POI技術來匯出或者匯入Excel,所以我們就用POI吧,用POI匯出Excel我們首先要下載所需的jar包然後匯入到我們的專案中,用maven的同學只需找到相關
依賴加入到pom.xml裡面即可。