如果excel中的日期始日期格式或者自定义格式,但是Java读取时按照String类型读取,这样就会造成读取到的日期是一串数字。假如没有对该日期进行处理就直接读取,那样获取到的数字串是不能够知道是何年何月的,这里主要介绍已经存到数据库中并且是一串数字,需要反向解析字符串到日期的过程。
public static String time(String data){//excel 1963-11 日期格式转成了string并存储23329,这个类是将23329转成String的1963-11并返回
int datas = Integer.parseInt(data);
HSSFWorkbook wb = new HSSFWorkbook();
HSSFSheet sheet = wb.createSheet();
Row row = sheet .createRow(0);
Cell cell = row.createCell(0);
cell.setCellType(Cell.CELL_TYPE_NUMERIC);//设置成数值类型
cell.setCellValue(datas);//添加数据
CellStyle cellStyle = wb.createCellStyle();
CreationHelper creationHelper = wb.getCreationHelper();
cellStyle.setDataFormat(
creationHelper.createDataFormat().getFormat("yyyy/MM/dd")//设置日期格式
);
cell.setCellStyle(cellStyle);
CellType.type(cell);//调用cell处理过程这个过程是将日期类型转换成String类型并且直接获取就行了
String yuefen=cell.getStringCellValue();
return yuefen;
这样就完成了excel日期没经过处理存入了数据库,在读取的时候进行日期反转的过程