私が読んでいるxlsxファイルがあります - Apache POI Library。
たとえば、ある行には、次のようなセル値があります。
2013 年 9 月 1 日 | 15136.00| マット|……
私の目標は 、行内のすべてのセルを文字列値として読み取ることです。しかし、ご覧のとおり、 01-Sep-13を文字列として読み取ることはできません。それは、cell.getDateCellValue(); を使用して Date type () のように表すだけです。
1) どうにかして 01-Sep-13 を文字列: "01-Sep-13"; として読み取ることができますか? 2)日付パターン(ddMMyyyy) と (dd-MMM-yy)が異なる場合、Date 値を文字列に変換できますか?
コード:
行とセルを反復処理すると、Apache POI は各セル タイプを分析します。
String normalizeCellType(Cell cell) {
switch (cell.getCellType()) {
case Cell.CELL_TYPE_STRING:
return cell.getRichStringCellValue().getString());
case Cell.CELL_TYPE_NUMERIC:
if (DateUtil.isCellDateFormatted(cell)) {
Date date = cell.getDateCellValue(); ????????????
System.out.println(date);
} else {
....
}
break;
case Cell.CELL_TYPE_BOOLEAN:
return ....
case Cell.CELL_TYPE_FORMULA:
return ....
default:
System.out.println();
}
}