POI中設定Excel單元格格式
POI中可能會用到一些需要設定EXCEL單元格格式的操作小結:
先獲取工作薄物件:
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
HSSFCellStyle setBorder = wb.createCellStyle();
一、設定背景色:
setBorder.setFillForegroundColor((short) 13);// 設定背景色
setBorder.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND);
二、設定邊框:
setBorder.setBorderBottom(HSSFCellStyle.BORDER_THIN); //下邊框
setBorder.setBorderLeft(HSSFCellStyle.BORDER_THIN);//左邊框
setBorder.setBorderTop(HSSFCellStyle.BORDER_THIN);//上邊框
setBorder.setBorderRight(HSSFCellStyle.BORDER_THIN);//右邊框
三、設定居中:
setBorder.setAlignment(HSSFCellStyle.ALIGN_CENTER); // 居中
四、設定字型:
HSSFFont font = wb.createFont();
font.setFontName("黑體");
font.setFontHeightInPoints((short) 16);//設定字型大小
HSSFFont font2 = wb.createFont();
font2.setFontName("仿宋_GB2312");
font2.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);//粗體顯示
font2.setFontHeightInPoints((short) 12);
setBorder.setFont(font);//選擇需要用到的字型格式
五、設定列寬:
sheet.setColumnWidth(0, 3766); //第一個引數代表列id(從0開始),第2個引數代表寬度值 參考 :"2012-08-10"的寬度為2500
六、設定自動換行:
setBorder.setWrapText(true);//設定自動換行
七、合併單元格:
Region region1 = new Region(0, (short) 0, 0, (short) 6);
//引數1:行號 引數2:起始列號 引數3:行號 引數4:終止列號
或者用
CellRangeAddress region1 = new CellRangeAddress(rowNumber, rowNumber, (short) 0, (short) 11);
但應注意兩個構造方法的引數不是一樣的,具體使用哪個取決於POI的不同版本。
sheet.addMergedRegion(region1);
目前用過的就這麼多,後續有新的會繼續新增。