poi 設定excel 單元格樣式
阿新 • • 發佈:2018-11-30
/** * 建立Excel * @param filePath 檔案路徑 * @param fileName 檔名 * @return 建立成功返回 true 否則false */ private static boolean CreateExcelFile02(String filePath, String fileName){ //建立Excel工作簿物件 HSSFWorkbook workbook =new HSSFWorkbook(); //在工作簿中建立工作表物件 HSSFSheet sheet = workbook.createSheet(); //設定工作表名稱 workbook.setSheetName(0,"測試01"); //在工作表中建立行物件 HSSFRow row = sheet.createRow(0); //在第一行建立單元格物件 HSSFCell cell = row.createCell(0); //單元格賦值 cell.setCellValue("姓名"); HSSFCellStyle cellStyle = workbook.createCellStyle(); //設定水平居中 cellStyle.setAlignment(HorizontalAlignment.CENTER); //設定垂直居中 cellStyle.setVerticalAlignment(VerticalAlignment.CENTER); //設定下邊框 cellStyle.setBorderBottom(BorderStyle.THIN); //設定上邊框 cellStyle.setBorderTop(BorderStyle.THIN); //設定走邊框 cellStyle.setBorderLeft(BorderStyle.THIN); //設定右邊框 cellStyle.setBorderRight(BorderStyle.THIN); //設定字型 HSSFFont font = workbook.createFont(); font.setFontName("華文行楷");//設定字型名稱 font.setFontHeightInPoints((short)28);//設定字號 font.setItalic(false);//設定是否為斜體 font.setBold(true);//設定是否加粗 font.setColor(IndexedColors.RED.index);//設定字型顏色 cellStyle.setFont(font); //設定背景 cellStyle.setFillPattern(FillPatternType.SOLID_FOREGROUND); cellStyle.setFillForegroundColor(IndexedColors.YELLOW.index); //設定寬度和高度 row.setHeightInPoints(30);//設定行的高度 sheet.setColumnWidth(0, 20 * 256);//設定列的寬度 //渲染單元格 cell.setCellStyle(cellStyle); File file = new File(filePath,fileName); //建立檔案輸出流物件 FileOutputStream outputStream = null; try { outputStream = new FileOutputStream(file); workbook.write(outputStream); outputStream.close(); return true; } catch (FileNotFoundException e) { e.printStackTrace(); return false; } catch (IOException e) { e.printStackTrace(); return false; } }