Java处理时间格式CST和GMT转换

比眉伴天荒 2024-04-06 12:16 120阅读 0赞

前言

在编程中处理日期格式时,通常会遇到带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格式的时间

代码:

  1. public static void main(String[] args) throws ParseException {
  2. String dateStr = "Mon Oct 26 22:22:22 CST 2022";
  3. DateFormat cst = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
  4. DateFormat gmt = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.ENGLISH);
  5. Date dateTime = gmt.parse(dateStr);
  6. String dateString = cst.format(dateTime);
  7. System.out.println(dateString);
  8. }

输出结果:

  1. 2022-10-26 22:22:22

CST格式的日期转换为GMT时间

代码:

  1. public static void main(String[] args) throws ParseException {
  2. Date date = new Date();
  3. DateFormat gmt = new SimpleDateFormat("EEE, d-MMM-yyyy HH:mm:ss z", Locale.ENGLISH);
  4. gmt.setTimeZone(TimeZone.getTimeZone("GMT"));
  5. String dateStr = gmt.format(date);
  6. System.out.println(dateStr);
  7. }

输出结果:

  1. Fri, 23-Sep-2022 03:05:42 GMT

GMT字符串转化为本地时间

  1. public static void main(String[] args) throws ParseException {
  2. DateFormat format = new SimpleDateFormat("EEE, d-MMM-yyyy HH:mm:ss z", Locale.ENGLISH);
  3. format.setTimeZone(TimeZone.getTimeZone("GMT"));
  4. Date parse = format.parse("Fri, 23-Sep-2022 03:15:55 GMT");
  5. System.out.println(parse);
  6. }

输出结果:

  1. Fri Sep 23 11:15:55 CST 2022

相关阅读:
https://ssxtx.blog.csdn.net/article/details/108369391

在这里插入图片描述

点赞 收藏 关注

发表评论

表情:
评论列表 (有 0 条评论,120人围观)

还没有评论,来说两句吧...

相关阅读

    相关 GMT UTC CST

    省流:国内直接用GMT+8 解释: 1. GMT,格林威治时间。即0时区。 1. 国内各地不区分时区,任何地方都用北京时间(乌鲁木齐拉萨等地并不在东8区),即GMT+

    相关 cst时间(utccst时间)

    美国洛杉矶22点是中国几点? 美国洛杉矶用的是太平洋时区,冬令时与北京相差16小时,所以美国洛杉矶22点是中国第二天14点;夏令时比标准时间早一个小时,与北京相差15小时