解析LocalDateTime格式

问题描述 投票:2回答:2

有没有办法解析2018-09-17T17:13:13.7412018-09-17 17:13:13。我正在尝试:

LocalDateTime startDateTime = LocalDateTime.now();
DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime.parse(startDateTime, FORMATTER);

使用组合我得到一个解析异常或2018-09-17T17:13:13

注意:我不需要T和毫秒

java-8
2个回答
4
投票

像这样使用format

LocalDateTime startDateTime = LocalDateTime.now();
DateTimeFormatter FORMATTER = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
startDateTime.format(FORMATTER);

0
投票

您可以直接使用LocalDateTime来获取年,月,日,小时,分钟和秒,而不是DateTimeFormatter。

以下代码可能适用于您的方案。

LocalDateTime startDateTime = LocalDateTime.now();
        int year = startDateTime.getYear();
        int month = startDateTime.getMonthValue();
        int day = startDateTime.getDayOfMonth();

        int hours = startDateTime.getHour();
        int minute = startDateTime.getMinute();
        int seconds = startDateTime.getSecond();
        int nanoSeconds = startDateTime.getNano();

        String date = year +"-"+month+"-"+day+" "+hours+":"+minute+":"+seconds;
        System.out.println(date);
© www.soinside.com 2019 - 2024. All rights reserved.