时间戳与格式日期时间转换:LocalDateTime,SimpleDateFormat

时间戳与格式日期时间转换


1.使用LocalDateTime:线程安全

public void testLocalDateTime() {
        long time = new Date().getTime();

        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        //时间戳格式化
        String timeStr = dtf.format(LocalDateTime.ofInstant(Instant.ofEpochMilli(time), ZoneId.systemDefault()));
        System.out.println(timeStr);
        //日期字符串转时间戳
        long timeRs = LocalDateTime.from(dtf.parse(timeStr)).atZone(ZoneId.systemDefault()).toInstant().toEpochMilli();
        System.out.println(timeRs);
}

2.使用SimpleDateFormat:线程不安全

public void testSdf() throws ParseException {
        long time = new Date().getTime();

        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        //时间戳格式化
        String timeStr = sdf.format(time);
        System.out.println(timeStr);
        //日期字符串转时间戳
        System.out.println(sdf.parse(timeStr).getTime());
}
posted @ 2023-02-15 15:22  musecho  阅读(275)  评论(0编辑  收藏  举报