日期:2014-05-20 浏览次数:20912 次
try{
按"yyyy.MM.dd"转换;
返回转换好的Date;
}catch (Exception e){
//doNothing;
}
try{
按"yyyy.MM"转换;
返回转换好的Date;
}catch(Exception e){
//doNothing;
}
......
走到最后则说明是无法识别的格式,返回空串;(或者抛出异常==)
------解决方案--------------------
楼上正解.
------解决方案--------------------
统一用
cell.getStringCellValue().trim()取字符
然后再调用以下方法转换格式
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "1990.8.8";
//String str2 = "1990-9-4";
parseDate(str);
}
/****
* 日期String串转Date
* @param str
* @return
*/
public static Date parseDate(String str){
Date d = new Date();
if(str.indexOf('.')!=-1){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy.MM.dd");
try {
d = sdf.parse(str);
System.out.println(sdf.format(d));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(str.indexOf('-')!=-1){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
try {
d = sdf.parse(str);
System.out.println(sdf.format(d));
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return d;
}