1. 程式人生 > >poi 設定excel 單元格樣式

poi 設定excel 單元格樣式

 /**
     *  建立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;
        }

    }