将字符串格式化为 LocalDateTime

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

我知道之前已经有人问过这个问题,但在查看所有解决方案后我仍然遇到错误。

我正在尝试使用 DateTimeFormatter 将字符串解析为 LocalDateTime。

这是我的代码:

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class MainAppointment {

    public static void main(String[] args) {
        String description = "12/02/2024 13:45:00";
    DateTimeFormatter parser = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        LocalDateTime result = LocalDateTime.parse(description,parser);
    }
}

我得到的错误是

Exception in thread "main" java.time.format.DateTimeParseException: Text '12/02/2023 13:45:00' could not be parsed at index 0

我尝试将 DateTimeFormatter 模式更改为

yyyy-MM-dd'T'HH:mm:ss
,甚至尝试使用
.ISO_LOCAL_DATE_TIME
而不是 ofPattern。我仍然遇到同样的错误。

我做错了什么?似乎没问题(我读了很多其他问题并尝试了解决方案)。谢谢一百万。

java java-time datetimeformatter
1个回答
0
投票

您的解析器匹配错误,请尝试以下操作:

import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

public class MainAppointment {

    public static void main(String[] args) {
        String description = "12/02/2024 13:45:00";
    DateTimeFormatter parser = DateTimeFormatter.ofPattern("MM/dd/yyyy HH:mm:ss");
        LocalDateTime result = LocalDateTime.parse(description,parser);
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.