JAVA TimeZone发行EDT与EST

我是Java的新手,因此很长一段时间以来一直无法弄清这一点。

我正在使用Windows XP,并且机器设置为TimeZone: 。

我有一个Java应用程序,它使用当前系统时间和时区信息,并向文件中写入一个字符串,如:20101012 15:56:00 EST。

当我更改系统日期时,上面的最后一个日期部分,即:时区,从EST更改为EDT。

准确:从11月(例如:2009年11月)到3月(2010年3月),是EST,否则为EDT。

EST是什么,我想 不EDT。

是否有任何特定的类/函数,可以随时将其读为EST?

等待回应。


多谢您的回覆。好吧,我忘了提及几件事。

  1. 我希望在Windows时区设置中将机器设置为:东部时间(美国和加拿大)。

  2. 简而言之,我想做的是:获取机器时间,并将其写入文本文件

  3. 我知道夏令时发生在三月至十一月之间。

但是问题是,当我将机器时间写入文件时,如果不存在夏令时(DST),则写为EST 2010 01 12 15:56:00

EST;如果DST是,则写为20101012 15:56:00 EDT。当下。我担心的是,无论是否是DST,我都希望始终编写EST。

回答:

我不认为您应该按照您的建议去做。

您是说无论系统时区当前是什么(“东部时间”不是您的时区,而是UTC +

5或+4),您都希望它显示EST。这是完全错误的。假设是夏天,您的计算机认为本地时间是2010/6/15 15:00。您打印当前时间,您将得到:

我在以下时间打印此文件的时间:美国东部时间2010年6月15日15:00:00

出于某种原因,您认为EDT令人不快,因此将其更改为EST:

列印时间:美国东部标准时间2010年6月15日15:00:00

但是,如果您在接下来的一个小时内将该片段发送给其他人,他们将被迫认为您是从未来出发的!由于EST的15:00:00是美国东部时间的16:00:00。

以上是 JAVA TimeZone发行EDT与EST 的全部内容, 来源链接: utcz.com/qa/402370.html

回到顶部