Java无法解析的日期SimpleDateFormat

问题描述 投票:1回答:3

我有一个看起来像这样的日期:

Sun Dec 29 00:24:09 CET 2019

我有一个实用工具,可以将字符串日期从一种格式解析为另一种:

public String formatDate(String date, String fromFormat, String toFormat) throws Exception {
        SimpleDateFormat from = new SimpleDateFormat(fromFormat);
        SimpleDateFormat to = new SimpleDateFormat(toFormat);
        return to.format(from.parse(date));
    }

但是,对于上述日期格式,我找不到正确的日期格式来指示我的方法。根据SimpleDateFormat patterns documentation,应该是(如果我没记错的话)以下(对于Sun Dec 29 00:24:09 CET 2019):

"E M d HH:mm:ss z yyyy"

但是,它引发以下异常:

java.text.ParseException: Unparseable date: "Sun Dec 29 00:24:09 CET 2019"
        at java.text.DateFormat.parse(DateFormat.java:366)
        at com.aptar.simulator.Utils.formatDate(Utils.java:60)

该方法这样调用:

formatDate(exDate, "E M d HH:mm:ss z yyyy", "dd-MM-yyyy HH:mm:ss");

哪里

exDate = "Sun Dec 29 00:24:09 CET 2019"
java simpledateformat
3个回答
1
投票

日期格式应为


1
投票

尝试以下解决方案-


0
投票

请找到下面的代码段以解决您的问题。问题是字母代码正确,但是字符计数不匹配,从而导致了问题。例如:Sun有3个字符,但您在格式化程序中使用的是单个E。

© www.soinside.com 2019 - 2024. All rights reserved.