您的位置:首页 > 其它

String时间类型转换为ZonedDateTime时间类型

2017-11-27 14:48 274 查看
搞了一个早上,不知道怎么弄这个东西。最后发现没有必要将ZonedDateTime写的很全,可以精简的封装

public static ZonedDateTime changeShanghaiToUTC(String beijingDateTimeStr){
DateTimeFormatter beijingFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss").withZone(ZoneId.of("Asia/Shanghai"));
if(StringUtils.isBlank(beijingDateTimeStr)){
return null;
}
ZonedDateTime beijingDateTime = ZonedDateTime.parse(beijingDateTimeStr, beijingFormatter);
return beijingDateTime.withZoneSameInstant(ZoneId.of("UTC"));
}


关键点:

DateTimeFormatter后添加withZone这个值,String转换为ZonedDateTime中这个值是必须要的,否则转换为string时会报错。

使用DateTimeFormatter中的parse方法解析string为DateTimematter格式
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息