package pwc.taxtech.atms.service.impl; import org.apache.poi.hssf.usermodel.HSSFDateUtil; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; /** * @author ZhiKai Z Wei */ public class CitCommonUtil { /** * 计算当前系统时间期间,返回yyyy格式 * @return */ public static Integer getPeriod(){ //计算当前系统时间的期间 Calendar now = Calendar.getInstance(); StringBuilder sb = new StringBuilder(); sb.append(now.get(Calendar.YEAR)); // if(now.get(Calendar.MONTH) + 1 < 10){ // sb.append(0); // } // sb.append(now.get(Calendar.MONTH) + 1); return Integer.valueOf(sb.toString()); } /** * 导入Excel时根据单元格类型获取单元格的值 * @param cell * @return */ public static Object getValue(Cell cell) { Object obj = null; //判断单元格是否为null,若为null则直接返回,以防在获取枚举类型时报空指针异常 if(cell == null){ return obj; } switch (cell.getCellTypeEnum()) { case BOOLEAN: obj = cell.getBooleanCellValue(); break; case ERROR: obj = cell.getErrorCellValue(); break; case NUMERIC: //日期格式在获取枚举类型时也为NUMERIC,此时要做日期和数据的区分,并对时间做统一的格式转换 if(HSSFDateUtil.isCellDateFormatted(cell)){ SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd"); obj = sdf.format(cell.getDateCellValue()); break; } obj = cell.getNumericCellValue(); break; case STRING: obj = cell.getStringCellValue(); break; default: break; } return obj; } }