Example usage for org.apache.poi.ss.util CellUtil DATA_FORMAT

List of usage examples for org.apache.poi.ss.util CellUtil DATA_FORMAT

Introduction

In this page you can find the example usage for org.apache.poi.ss.util CellUtil DATA_FORMAT.

Prototype

String DATA_FORMAT

To view the source code for org.apache.poi.ss.util CellUtil DATA_FORMAT.

Click Source Link

Usage

From source file:bs.global.util.ExcelFactory.java

private void writeCell(HSSFRow row, int col, Object value, FormatType formatType, Short bgColor, HSSFFont font)
        throws NestableException {

    HSSFCell cell = HSSFCellUtil.createCell(row, col, null);
    if (value == null) {
        return;/* w w w.j a  va 2  s. c o  m*/
    }
    if (font != null) {
        HSSFCellStyle style = workbook.createCellStyle();
        style.setFont(font);
        cell.setCellStyle(style);
    }
    switch (formatType) {

    case TEXT:
        cell.setCellValue(value.toString());
        break;
    case INTEGER:
        cell.setCellValue(((Number) value).intValue());
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.DATA_FORMAT,
                HSSFDataFormat.getBuiltinFormat(("#,##0")));
        break;
    case FLOAT:
        cell.setCellValue(((Number) value).doubleValue());
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.DATA_FORMAT,
                HSSFDataFormat.getBuiltinFormat(("#,##0.00")));
        break;
    case DATE:
        cell.setCellValue((Date) value);
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.DATA_FORMAT,
                HSSFDataFormat.getBuiltinFormat(("m/d/yy")));
        break;
    case MONEY:
        cell.setCellValue(((Number) value).intValue());
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.DATA_FORMAT,
                format.getFormat("($#,##0.00);($#,##0.00)"));
        break;
    case PERCENTAGE:
        cell.setCellValue(((Number) value).doubleValue());
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.DATA_FORMAT,
                HSSFDataFormat.getBuiltinFormat("0.00%"));
    }
    if (bgColor != null) {
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.FILL_FOREGROUND_COLOR, bgColor);
        HSSFCellUtil.setCellStyleProperty(cell, workbook, CellUtil.FILL_PATTERN,
                HSSFCellStyle.SOLID_FOREGROUND);
    }
}