JAVA 时区时间相互转换

        //系统设置为UTC时区
        System.setProperty("user.timezone", "UTC");
        //String dateString = "2023-04-06T07:23:36.539767500";
        String dateString = "2023-04-06T08:15:06.662Z";
        System.out.println("UTC 时间:"+dateString.subSequence(0, dateString.length()));

        String localDateTime1 = LocalDateTime.ofInstant(Instant.parse(dateString.subSequence(0, dateString.length())), TimeZone.getTimeZone("Asia/Shanghai").toZoneId()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"));   
        System.out.println("转换为北京时间:"+localDateTime1);
        
        //获取当前时间和时区
        String localDateTime = LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"));
        TimeZone timeZone = TimeZone.getDefault();
        System.out.println("当前时区:"+timeZone.toZoneId()+",当前时间:"+localDateTime);
        
        //获取当前时间转换为UTC时区
        String utctime = LocalDateTime.now(TimeZone.getTimeZone("UTC").toZoneId()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"));
        System.out.println("当前时区:"+TimeZone.getTimeZone("UTC").toZoneId()+",当前时间:"+utctime);
        
        //获取当前时间转换为UTC时区
        String time1 = LocalDateTime.now(TimeZone.getTimeZone("Asia/Tokyo").toZoneId()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"));
        System.out.println("当前时区:"+TimeZone.getTimeZone("Asia/Tokyo").toZoneId()+",当前时间:"+time1);
        
        //获取当前时间转换为特定时区
        String transtime = LocalDateTime.now(TimeZone.getTimeZone("Asia/Shanghai").toZoneId()).format(DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"));
        System.out.println("当前时区:"+TimeZone.getTimeZone("Asia/Shanghai").toZoneId()+",当前时间:"+transtime);

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码

)">
< <上一篇
下一篇>>