1. 程式人生 > >Hssfworkbook 設定單元格格式 setdataformat

Hssfworkbook 設定單元格格式 setdataformat

HSSFWorkbook demoWorkBook = new HSSFWorkbook();   
 HSSFSheet demoSheet = demoWorkBook.createSheet("The World's 500 Enterprises");   
 HSSFCell cell = demoSheet.createRow(0).createCell(0);

1.設定單元格為文字格式

 HSSFCellStyle cellStyle2 = demoWorkBook.createCellStyle();
 HSSFDataFormat format = demoWorkBook.createDataFormat
(); cellStyle2.setDataFormat(format.getFormat("@")); cell.setCellStyle(cellStyle2);

第一種:日期格式

cell.setCellValue(new Date(2008,5,5));
//set date format
HSSFCellStyle cellStyle = demoWorkBook.createCellStyle();
HSSFDataFormat format= demoWorkBook.createDataFormat();
cellStyle.setDataFormat(format.getFormat
("yyyy年m月d日")); cell.setCellStyle(cellStyle);

第二種:保留兩位小數格式

cell.setCellValue(1.2);
HSSFCellStyle cellStyle = demoWorkBook.createCellStyle();    
cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("0.00"));
cell.setCellStyle(cellStyle);

第三種:貨幣格式

cell.setCellValue(20000);
HSSFCellStyle cellStyle = demoWorkBook.createCellStyle
(); HSSFDataFormat format= demoWorkBook.createDataFormat(); cellStyle.setDataFormat(format.getFormat("¥#,##0")); cell.setCellStyle(cellStyle);

第四種:百分比格式

cell.setCellValue(20);
HSSFCellStyle cellStyle = demoWorkBook.createCellStyle();
cellStyle.setDataFormat(HSSFDataFormat.getBuiltinFormat("0.00%"));
cell.setCellStyle(cellStyle);

此種情況跟第二種一樣

第五種:中文大寫格式

cell.setCellValue(20000);
HSSFCellStyle cellStyle = demoWorkBook.createCellStyle();
HSSFDataFormat format= demoWorkBook.createDataFormat();
cellStyle.setDataFormat(format.getFormat("[DbNum2][$-804]0"));
cell.setCellStyle(cellStyle);

第六種:科學計數法格式

cell.setCellValue(20000);
HSSFCellStyle cellStyle = demoWorkBook.createCellStyle();
cellStyle.setDataFormat( HSSFDataFormat.getBuiltinFormat("0.00E+00"));
cell.setCellStyle(cellStyle);