为了账号安全,请及时绑定邮箱和手机立即绑定

当字符串以 Z 结尾时将字符串转换为日期格式

当字符串以 Z 结尾时将字符串转换为日期格式

跃然一笑 2022-06-15 09:59:00
我必须将以下字符串解析为更易读的日期格式。字符串日期 = "20190112151605.0Z";但是,我以前从未遇到过Z。我知道这与时区有关,但是当我尝试使用我常用的代码时,我得到一个 java.lang.NumberFormatException。我的代码如下: String whenChanged = "20190112151605.0Z";   long DIFF_NET_JAVA_FOR_DATE_AND_TIMES = 11644473600000L; long adDate1 = Long.parseLong(whenChanged); long adLongDate1 = ( adDate1  / 10000 ) - DIFF_NET_JAVA_FOR_DATE_AND_TIMES; Date lastLogonDate1 = new Date(adLongDate1); String format2 = new SimpleDateFormat("MM/dd/yyyy  HH:mma'Z'").format(lastLogonDate1);任何帮助都会很棒。谢谢
查看完整描述

2 回答

?
呼如林

TA贡献1798条经验 获得超3个赞

这会成功的。表示UTCZ时区


DateTimeFormatter fmt = DateTimeFormatter.ofPattern("yyyyMMddHHmmss.Sz");

ZonedDateTime parsed = ZonedDateTime.parse("20190112151605.0Z", fmt);


System.out.println(parsed);     // prints 2019-01-12T15:16:05

请参阅日期时间格式化程序


查看完整回答
反对 回复 2022-06-15
?
慕雪6442864

TA贡献1812条经验 获得超5个赞

你有必要对这些时区做任何事情吗?


如果没有,你可以做


if(whenChanged.contains('Z')){

   whenChanged = whenChanged.substring(0,date.indexOf('Z'));

}


查看完整回答
反对 回复 2022-06-15
  • 2 回答
  • 0 关注
  • 250 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号