ZonedDateTime格式日期转换常用日期格式
今天有遇到一个日期为2021-03-03T14:28:33.000+0000一时不知道怎么转换普通格式处理,看了一下网上的资料和官网的数据自己写了一份简单实现方式
提示:参考了此链接的代码
一、ZonedDateTime是什么?
ZonedDateTime 是jdk1.8新增的时区的日期时间处理工具类,官网连接:官网连接
二、使用步骤
代码如下(示例):
/**
* ZonedDateTime转换 带时区日期转换
* @param time 时区日期 如:2021-02-24T14:28:33.000+0000
* @param timeFormatter 时区日期格式 如 yyyy-MM-dd'T'HH:mm:ss.SSS+SSSS
* @param myFormatter 我的日期格式 默认:yyyy-MM-dd HH:mm:ss
* @return
*/
public String getFormatterTime(String time,String timeFormatter,String myFormatter){
//转换指定时区
DateTimeFormatter formatter0 = DateTimeFormatter.ofPattern(timeFormatter).withZone(ZoneId.of("Asia/Shanghai"));
//自己所需格式
myFormatter = Optional.ofNullable(myFormatter).orElse("yyyy-MM-dd HH:mm:ss");
DateTimeFormatter formatter = DateTimeFormatter.ofPattern(myFormatter);
ZonedDateTime zoneTime = ZonedDateTime.parse(time, formatter0);
return zoneTime.withFixedOffsetZone().format(formatter);
}
总结
问题小记,希望以后遇到这种问题能回来看看,感谢大家,有什么问题欢迎评论