当前位置: 首页 > 后端技术 > Java

Java时间格式化有很多种玩法

时间:2023-04-02 09:14:31 Java

时间过得真快,转眼就2022年了,作为开发,时间处理非常繁琐。从Java8开始,有了新的时间API,时间处理更加优雅,无需依赖第三方库,线程安全。今天,我们来梳理一下新API的格式,也来玩点没玩过的,点赞,转发,看。新API的时间格式新时间API的时间格式由java.time.format.DateTimeFormatter处理。结合本地化时间和枚举FormatStyle定义的样式,DateTimeFormatter预定义了基于本地(Locale)样式的时间格式。让我们看一下这段代码:Stringformat=DateTimeFormatter.ofLocalizedDateTime(FormatStyle.MEDIUM).format(ZonedDateTime.now());如果你在中国,格式化结果:2022-01-064:22:01PM如果你在美国:Jan6,2022,4:21:10PM有三种静态方法和它们的重载来格式化本地化时间。细节整理成思维导图:ISO/RFC规范格式DateTimeFormatter也有内置的ISO和RFC时间格式,基于内置DateTimeFormatter的静态实例。例如://静态实例DateTimeFormatterisoWeekDateFormatter=DateTimeFormatter.ISO_WEEK_DATE;//执行格式化Stringformat=isoWeekDateFormatter.format(LocalDateTime.now());//format=2022-W01-4System.out.println("format="+format);其他的如下表所示:ParadigmFormatting这个方法应该是我们最常用的方法了。通过字母和符号构造一个模式(Patterns),使用ofPattern(String)或ofPattern(String,Locale)方法将构造好的模式传递过去。例如,dMMMuuuu会将2011-12-03格式化为2011年12月3日。从模式创建的格式可以根据需要多次使用,它是不可变的并且线程安全的。你信什么yyyy-MM-ddHH:mm:ss你玩腻了,胖哥给你看你没见过的东西://最后是两个V,不是W,一个V就可以报错Stringpattern="Guuuu'Year'MMMd'day'ZZZZZVV";字符串格式=DateTimeFormatter.ofPattern(模式).format(ZonedDateTime.now());//格式=2022-W01-4System.out.println("格式="+格式);输出:format=January7,2022+08:00Asia/Shanghai表格给你整理了,你试试看:关注公众号:Felordcn获取更多信息个人博客:https://felord.cn

最新推荐
猜你喜欢