将字符串String转换成Date类型的用法很常见,一般使用SimpleDateFormat下的parse方法(我们系统没有很高的并发,不用考虑线程安全问题,使用SimpleDateFormat足矣),但是使用这个方法需要考虑一些编码的问题。
比如解析的字符串为空等格式不符合的问题,代码如下:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date d = sdf.parse("");
上面代码将会抛出异常:
java.text.ParseException: Unparseable date: ""
因此最好在此前进行判断,提高代码的健壮性,例如利用try-catch块来进行处理:
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date;
try {
date = sdf.parse("");
} catch (Exception e) {
date = null;
}
return date;
假如产生异常,将会返回null。