将日期转换为 YYYY-MM-DD HH:MM:SS

时间:2021-04-27 08:03:29

标签: java spring-boot date

如果我将输入作为任何日期格式。我想将其转换为 YYYY-MM-DD HH:MM:SS

我把代码写成:

输入格式将是以下任何一种:

DateTimeFormatter inputformats=DateTimeFormatter.ofPattern("[dd-MMM-uuuu hh:mm]","[dd-MMM-uuuu hh:mm:ss.s]","[uuuu-MM-dd hh:mm:ss]","[dd-MM-uuuu hh:mm:ss]""[uuuu-MM-dd]").withResolverStyle(ResolverStyle.STRICT);

    
try {
    LocalDateTime localDate = LocalDateTime.parse(value, inputformats);
    value = localDateTime.format(outputformat);
    return value;

} catch (DateTimeParseException e) {
    log.error(e);
    return null;
}

我给出的输入为:“26-08-1990 10:12:11”。但是我收到“无法解析:无法从 temporalaccessor 获取 localDateTime”这个错误

1 个答案:

答案 0 :(得分:-1)

    public static void main(String[] args) {
        DateTimeFormatter inputformats = DateTimeFormatter.ofPattern(""
                + "[uuuu/MM/dd HH:mm:ss.SSSSSS]"
                + "[uuuu-MM-dd HH:mm:ss[.SSS]]"
                + "[dd-MM-uuuu HH:mm:ss]"
        ).withResolverStyle(ResolverStyle.STRICT);

        String value = "26-08-1990 10:12:11";
        try {
            LocalDateTime localDateTime = LocalDateTime.parse(value, inputformats);
            value = localDateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
            System.out.println(value);

        } catch (DateTimeParseException e) {
            System.out.println(e);
        }
    }

其中 dd-MM-uuuu HH:mm:ss 示例输入模式和 yyyy-MM-dd HH:mm:ss 是预期的输出模式。