web-dev-qa-db-ja.com

Apache POIを使用して日付形式を設定する

Apache POIでExcelファイルに日付形式で日付を設定したい。値は、アドレスバーではmm/dd/YYYYで表示され、セルではdd-mmm(数値では日付、01-Janのような文字列では月)で表示されるように設定されます。この状況で私を助けてくれませんか?

14
sairajgemini

必要なセルにHSSFCellStyleを適用できます。ここに私の過去の仕事からのいくつかのコードスニペット、それはそのままではありませんが、基本的な考えを示しています:

HSSFRow row = sheet.createRow(0);
HSSFCell cell = row.createCell((short) 0);
cell.setCellType(HSSFCell.CELL_TYPE_NUMERIC);

SimpleDateFormat datetemp = new SimpleDateFormat("yyyy-MM-dd");
Date cellValue = datetemp.parse("1994-01-01 12:00");
cell.setCellValue(cellValue);

//binds the style you need to the cell.
HSSFCellStyle dateCellStyle = wb.createCellStyle();
short df = wb.createDataFormat().getFormat("dd-mmm");
dateCellStyle.setDataFormat(df);
cell.setCellStyle(dateCellStyle);

JDKの日付形式の詳細については、次をお読みください: http://docs.Oracle.com/javase/6/docs/api/Java/text/SimpleDateFormat.html

18
Gavin Xiong