今天在看代码时,遇到一个时间的转化问题,就是将字符串格式的时间转换成时间格式。
如果格式错了就无法解析成正确的格式,所以在转换时要注意格式的一致性。
public class PraseExceptionExample {
public static void main(String args[]) {
String dateStr = "2016/7/21";
DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd");
Date date = new Date();
try {
date = dateFormat.parse(dateStr);
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
上面是正常转换格式,这样输出结果就是:
如果转换一下格式,就有可能不对,例如把日期变成2016-7-21就会报错:
所以要主义格式的一致性,下面这样也是可以的。
public class PraseExceptionExample {
public static void main(String args[]) {
String dateStr = "2016-7-21";
DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = new Date();
try {
date = dateFormat.parse(dateStr);
System.out.println(date);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
得到的结果同样是: