答案 0 :(得分:28)
Etc/UTC
是为显示名称为UTC
的时区指定的。也就是说,根据IANA's time zone database,它们是同一时区的长短名称。
答案 1 :(得分:28)
首先,回答这个问题:
UTC
和Etc/UTC
时区之间没有区别。
Etc/UTC
是Olson-timezone-database(tz database)中的时区,也称为IANA-timezones-database,其中所有时区都遵循统一的命名约定:{{1} }。
由于某些时区不能归因于世界上的任何区域(即大陆或海洋),因此引入了特殊区域Area/Location
(Etcetera)。这主要适用于Etc
等行政时区
因此,为了符合命名约定,通用协调时间(区域)在tz数据库中被命名为UTC
。
对于UTC以外的管理时区(例如Etc/UTC
,GMT+4
),tz数据库在区域名称中使用POSIX-style signs。 POSIX在格林威治(格林威治以西)之后的区域有积极的迹象,在格林威治以前的区域(格林威治以东)有负面迹象。
时区中的POSIX风格标志与时区中定义的时区相反,现在广泛使用ISO 8601。在ISO 8601时区格式中,负号表示区域位于UTC(格林威治以西)之后,而正号表示区域位于UTC之前(格林威治以东)。这已成为当今的标准用法。
POSIX中相反定义的可能原因是:
答案 2 :(得分:0)
ETC / GMT + 4与GMT-4相同。
public static void main(String[] args) {
TimeZone tz = TimeZone.getTimeZone("Etc/GMT-7");
System.out.println(tz);
tz = TimeZone.getTimeZone("GMT+7");
System.out.println(tz);
}
你可以自己测试一下。
但我不知道ETC的含义......