SimpleDateFormat格式化日期问题
前言
发现一个问题,经过以下语句处理后,发现12:27:45转换后成为了00:27:45。
DateFormat df = null;
if(DATE1.trim().length() == 10){
df = new SimpleDateFormat("yyyy-MM-dd");
}else{
df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
}
try {
Date dt1 = df.parse(DATE1);
Date dt2 = df.parse(DATE2);
long time = (dt1.getTime() - dt2.getTime())/(1000);
return time;
} catch (Exception exception) {
exception.printStackTrace();
return (long) 0;
}
原来df = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");是这句话搞的鬼,这是采用的12小时制,若需采用24小时制则需变为df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
美图美文