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,时间格式化
- <span style="white-space:pre"> </span>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 ;
- }