今天遇到把字符串Mon Dec 10 15:15:14 CST 2012轉爲日期,這個字段串由於包含時區信息(CST),所以需要這麼做:
/**
* 根據傳入的格式,日期化字符串
*/
private String convertStrToDate(String dateStr, String source,String target,Locale locale) {
SimpleDateFormat format = new SimpleDateFormat(source, locale);
SimpleDateFormat formatNew = new SimpleDateFormat(target, locale);
Date date = null;
try {
date = format.parse(dateStr);
} catch (Exception e) {
logger.error("格式化日期類型的字符串出錯:"+e, e);
}
return formatNew.format(date);
}
比如,調用時這麼寫:convertStrToDate(res, "EEE MMM dd HH:mm:ss zzz yyyy","yyyy-MM-dd HH:mm:ss", Locale.US);