CST和GMT时间的区别
问题由来:
学习java.util.Date&java.sql.Date时,发现输出结果中:Sun Nov 22 13:27:45 CST 2020,于是查阅资料研学。
Main:
关于时间格式:GMT 、 UTC 、 CST 、ISO 。下文主要就CST和GMT进行整理总结。
时间格式:
-
GMT:(GreenwichMeanTime,GMT),格林尼治所在地的标准时间
格林尼治是英国伦敦南郊原格林威治天文台的所在地,它又是世界上地理经度的起始点。对于世界上发生的重大事件,都已格林尼治的地方时间记录。
依据格林尼治时间,人们很容易就推算出相对的本地时间。
(英国伦敦是0时区,中国北京是东八区。也就是说格林尼治时间是1日0点,对应的北京时间为1日早上8点)
-
CST: 却同时代表着四个不同的时区。
- Central Standard Time (USA) UT-6:00
- Central Standard Time (Australia) UT+9:30
- China Standard Time UT+8:00
- Cuba Standard Time UT-4:00
-
UTC:
协调世界时,又称世界统一时间、世界标准时间、国际协调时间。由于英文(CUT)和法文(TUC)的缩写不同,作为妥协,简称 UTC。
-
ISO: 一种时间的表示方法
Notice:
GMT是前世界标准时,UTC是现世界标准时
GMT和UTC时间可以认为是一样的,只是UTC更加精确些。
实例中,Date的CST&GMT(转化)
package Five_day;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
import java.util.TimeZone;
public class Demoone {
public static void main(String[] args) {
//获取当前时间
Date now = new Date();
System.out.println("Date默认CST格式为:");
System.out.println(now);
System.out.println("-----------------------------");
//将CST时间转化成GMT
DateFormat gmtDateFormat = new SimpleDateFormat("EEE,d-MMM-yyyy HH:mm:ss z ", Locale.ENGLISH);
gmtDateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
String dateStr = gmtDateFormat.format(now);
System.out.println("转换为GMT:");
System.out.println(dateStr);
}
}
/*
输出结果:
Date默认CST格式为:
Sun Nov 22 13:27:45 CST 2020
-----------------------------
转换为GMT格式为:
Sun,22-Nov-2020 05:27:45 GMT
*/