错误:java.text.ParseException:无法解析日期,如何正确格式化日期?

时间:2014-09-11 21:49:01

标签: java android date

我正在尝试将任何输入字符串或日期格式化为“MMM dd,yyyy”:

public Date format(Object date) {
    if (date instanceof String) {
        date = stringToDate(date + "");
    }
    return stringToDate(dateToString((Date) date));
}

public String dateToString(Date date) {
    return (new SimpleDateFormat("MMM dd, yyyy")).format(date);
}

public Date stringToDate(String dateStr) {
    try {
        return (new SimpleDateFormat("MMM dd, yyyy")).parse(dateStr); // HERE IS WHERE THE ERROR MESSAGE TRIGGERS
    } catch (ParseException e) {
        e.printStackTrace();
        return null;
    }
}

但是,按照这种方式我收到一条错误消息:

java.text.ParseException: Unparseable date: "Thu Sep 11 00:00:00 UTC+01:00 2014" (at offset 0)
09-11 22:44:30.590  29020-29020/com.mypharmacy.app W/System.err﹕ at java.text.DateFormat.parse(DateFormat.java:626)
09-11 22:44:30.590  29020-29020/com.mypharmacy.app W/System.err﹕ at com.mypharmacy.helpers.DateHelper.stringToDate(DateHelper.java:26)
09-11 22:44:30.590  29020-29020/com.mypharmacy.app W/System.err﹕ at com.mypharmacy.helpers.DateHelper.format(DateHelper.java:15)
09-11 22:44:30.590  29020-29020/com.mypharmacy.app W/System.err﹕ at com.mypharmacy.dao.DrugDAOImpl.getAll(DrugDAOImpl.java:55)

请问如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您的格式似乎不符合“Thu Sep 11 00:00:00 UTC + 01:00 2014”

看起来更像是

ddd MMM M HH:mm:ss K YYYY

???