时间转换格式出现错误

前言

在使用2025-09转换成LocalDateTime出现错误,原因在于LocalDateTime只能适用这种格式yyyy-MM-dd HH:mm:ss,LocalDate使用yyyy-MM-dd格式,否则会抛异常

解决方法

转换成LocalDate

将字符串时间补充到yyyy-MM-dd格式,然后格式化时间

ini 复制代码
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd");
String time = "2025-09-01";

// 解析成LocalDate
LocalDate localDate = LocalDate.parse(time, dateTimeFormatter);


LocalDateTime localDateTime = localDate.atStartOfDay();

System.out.println(localDateTime); 

使用LocalDateTime解析

scss 复制代码
public class DateParseExample {
    public static void main(String[] args) {
        String dateStr = "2025-02-01";

        final TemporalAccessor temporalAccessor = DateTimeFormatter.ISO_DATE.parse(dateStr);
        final LocalDateTime localDateTime = LocalDateTime.of(
                secureGet(temporalAccessor, ChronoField.YEAR),
                secureGet(temporalAccessor, ChronoField.MONTH_OF_YEAR),
                secureGet(temporalAccessor, ChronoField.DAY_OF_MONTH),
                secureGet(temporalAccessor, ChronoField.HOUR_OF_DAY),
                secureGet(temporalAccessor, ChronoField.MINUTE_OF_HOUR),
                secureGet(temporalAccessor, ChronoField.SECOND_OF_MINUTE),
                secureGet(temporalAccessor, ChronoField.NANO_OF_SECOND)
        );
        System.out.println(localDateTime);
    }

    private static int secureGet(TemporalAccessor temporalAccessor, ChronoField chronoField) {
        if (temporalAccessor.isSupported(chronoField)) {
            return temporalAccessor.get(chronoField);
        }
        return 0;
    }
}

或者补到这种时间格式yyyy-MM-dd HH:mm:ss,然后转换为LocalDateTime

相关推荐
程序员良辰5 分钟前
【TongWeb7的M11】 首次登录密码修改 & 开启控制台远程访问
java·中间件·tomcat
lichenyang4536 分钟前
NestJS + Socket.IO 鉴权、用户房间与幂等邀请
前端·后端
吴声子夜歌6 分钟前
Java面试——设计模式(四)
java·设计模式·面试
paopaokaka_luck7 分钟前
基于springboot3+vue3+uniapp的剧本杀预约小程序(AI角色对话、协同过滤算法、地图Api、Echarts图形化分析)
java·前端·spring boot·学习·echarts
lichenyang4538 分钟前
React 实时通知与异步竞态处理
前端·后端
一嘴一个橘子9 分钟前
idea 的 双击Shift 全局搜索
java·ide·intellij-idea
nvvas9 分钟前
最新版 IntelliJ IDEA 全面介绍:面向现代 Java 开发者的智能 IDE
java·ide·intellij-idea
circuitsosk14 分钟前
Python 文件读写与上下文管理器:with 语句为什么是最佳选择
java·服务器·python·文件操作·上下文管理器·contextlib
Gopher_HBo15 分钟前
响应渲染 render(render/ 包)
后端