如果我将输入作为任何日期格式。我想将其转换为 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”这个错误
答案 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 是预期的输出模式。