日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

POI实现Excel的导出

發布時間:2023/12/31 编程问答 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 POI实现Excel的导出 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

public static void export(String filename,HttpServletResponse response){

??? // 創建excel WORKBOOK和SHEET
???HSSFWorkbook wb = new HSSFWorkbook();

?? //設置邊框
???HSSFCellStyle cellStyle= wb.createCellStyle();?
???cellstyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下邊框???
???cellstyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左邊框???
???cellstyle.setBorderTop(HSSFCellStyle.BORDER_THIN);//上邊框???
???cellstyle.setBorderRight(HSSFCellStyle.BORDER_THIN);//右邊框????
???
???//設置邊框加粗帶邊框帶顏色

?? HSSFCellStyle cellStyle1 = wb.createCellStyle();?

???HSSFFont cellfont1 = wb.createFont();
???cellfont1.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//字體加粗
???cellfont1.setFontHeightInPoints((short) 14);?//設置字體大小
???cellStyle1.setVerticalAlignment(HSSFCellStyle.VERTICAL_CENTER);//設置垂直居中
???cellStyle1.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下邊框???
???cellStyle1.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左邊框???
???cellStyle1.setBorderTop(HSSFCellStyle.BORDER_THIN);//上邊框???
???cellStyle1.setBorderRight(HSSFCellStyle.BORDER_THIN);//右邊框???
???cellStyle1.setFillForegroundColor((short) 24);// 設置背景色???
???cellStyle1.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);?
???cellStyle1.setAlignment(HSSFCellStyle.ALIGN_CENTER);
???cellStyle1.setFont(cellfont1);
???HSSFSheet sheet = wb.createSheet("數據導出");
???wb.setSheetName(wb.getSheetIndex("數據導出"), "數據導出",
?????HSSFWorkbook.ENCODING_UTF_16);
???sheet.setDefaultColumnWidth(Short.parseShort("40"));
???
???HSSFRow row = null;
???row = sheet.createRow(0);
???
???// 生成表頭?

? genTableCell(cellStyle1,row,'姓名',(short)0);//抽取的一個公共方法

? genTableCell(cellStyle1,row,'年齡’,(short)1);


???// 生成excel數據
??row = sheet.createRow(1);

? genTableCell(cellStyle,row,'張三',(short)0);

? genTableCell(cellStyle,row,'24,(short)1);

? genTableCell(cellStyle,row,'李四',(short)0);

? genTableCell(cellStyle,row,'18,(short)1);


? // 輸出EXCEL文件
???if (filename != null) {
????try {
?????filename=new String((filename).getBytes("gbk"),"iso8859-1");
????} catch (UnsupportedEncodingException e) {
?????
????}
???}
???
???response.setHeader("Content-Type", "Application/vnd.ms-excel");
???response.setHeader("Content-Disposition",
?????"attachment;filename=\"" + filename + "\"");
???ServletOutputStream fileOut;
???try {
????fileOut = response.getOutputStream();
????wb.write(fileOut);
????fileOut.close();
???} catch (IOException e) {
????logger.error("Excel寫入內存失敗!"+e.toString());
????throw new RuntimeException("Excel寫入內存失敗!"+e);
???}

}

/**
? *?將內容寫入指定單元格
? * @param cellfont?
? * @param row?
? * @param strvalue?單元格內容

? * @param i?單元格所在行坐標
? */
?private static void genTableCell(HSSFCellStyle cellstyle, HSSFRow row,
???String strvalue, short i) {
??HSSFCell cell;
??cell = row.createCell(i);
??cell.setEncoding(HSSFCell.ENCODING_UTF_16);
??cell.setCellValue(strvalue);
??cellstyle.setWrapText(true);
??cell.setCellStyle(cellstyle);
?}

總結

以上是生活随笔為你收集整理的POI实现Excel的导出的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。