1、最近在做爬虫的工作,当遇到时间格式化为 yyyy-MM-dd HH:mm:ss 这种格式的时候总是会有些地方报错,现在把一一列出:
2、实例:
a、形如:2013-12-13T07:10:50.000Z,时间格式化
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'.000Z'");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date date = format.parse("2013-12-13T07:10:50.000Z") ;
String dateTostr = sdf.format(date) ;
b、形如:Thu,12-Dec-2013 15:12:43 GMT 与 Fri, 13 Dec 2013 12:54:49 +0800,时间格式化
String date = "Fri, 13 Dec 2013 12:54:49 +0800" ; //Thu,12-Dec-2013 15:12:43 GMT
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Date newDate = new Date(date) ;
String dateStr = sdf.format(newDate) ;
/**
* @功能 传入正确的时间字符串格式化成正确的形式输出
* @param dates 传入时间的字符串
* @param format 需要格式化形式
* @author yuhan
*/
public static String strFormatToString(String dates, String format) {
SimpleDateFormat sf = new SimpleDateFormat(format);
String dateStr = "" ;
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss'.000Z'");
Date date = sdf.parse(dates);
dateStr = sf.format(date) ;
} catch (ParseException e) {
try {
Date newDate = new Date(dates) ;
dateStr = sf.format(newDate) ;
} catch (Exception e1) { //若爬的是 yyyy-MM-dd HH:mm:ss这种格式,直接赋值即可
dateStr = dates ;
}
}
return dateStr ;
}