前言
在编程中处理日期格式时,通常会遇到带CST或GMT的时间格式,它们代表什么,如何转换呢?
概念
CST和GMT时间示例如下:
Mon Oct 26 15:19:15 CST 2022
Thu, 22 Sep 2022 09:41:01 GMT
CST
这个代号缩写,并不是一个统一标准,目前,可以同时代表如下 4 个不同版本的时区概念(要根据上下文语义加以区分):
1)China Standard Time 中国标准时区 (UTC+8)
2)Cuba Standard Time 古巴标准时区 (UTC-4)
3)Central Standard Time (USA) 美国中央时区 (UTC-6)
4)Central Standard Time (Australia) 澳大利亚中央时区(UTC+9)
GMT
格林尼治时间(另有格林威治时间一说)
转换处理
本地时间为CST格式时间
CST格式字符串转换成yyyy-MM-dd HH:mm:ss格式的时间
代码:
publicstaticvoidmain(String[] args)throwsParseException{String dateStr ="Mon Oct 26 22:22:22 CST 2022";DateFormat cst =newSimpleDateFormat("yyyy-MM-dd HH:mm:ss");DateFormat gmt =newSimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy",Locale.ENGLISH);Date dateTime = gmt.parse(dateStr);String dateString = cst.format(dateTime);System.out.println(dateString);}
输出结果:
2022-10-2622:22:22
CST格式的日期转换为GMT时间
代码:
publicstaticvoidmain(String[] args)throwsParseException{Date date =newDate();DateFormat gmt =newSimpleDateFormat("EEE, d-MMM-yyyy HH:mm:ss z",Locale.ENGLISH);
gmt.setTimeZone(TimeZone.getTimeZone("GMT"));String dateStr = gmt.format(date);System.out.println(dateStr);}
输出结果:
Fri,23-Sep-202203:05:42 GMT
GMT字符串转化为本地时间
publicstaticvoidmain(String[] args)throwsParseException{DateFormat format =newSimpleDateFormat("EEE, d-MMM-yyyy HH:mm:ss z",Locale.ENGLISH);
format.setTimeZone(TimeZone.getTimeZone("GMT"));Date parse = format.parse("Fri, 23-Sep-2022 03:15:55 GMT");System.out.println(parse);}
输出结果:
FriSep2311:15:55 CST 2022
相关阅读:
https://ssxtx.blog.csdn.net/article/details/108369391
点赞 收藏 关注
版权归原作者 三省同学 所有, 如有侵权,请联系我们删除。