Java - 在没有TimeZone的情况下创建日历

MaL*_*nok 3 java timezone datetime

我想首先说我已经阅读了几个与此类似的线程,但没有一个真正解决了我的问题.我还要声明我曾试图使用SimpleDateFormat并且joda.DateTime没有任何成功.

问题如下:

我有一个Calendar对象,其中包含有关特定日期的信息:2008-04-30T00:00:00Z使用该calendar.getTime()方法时,我可以获得不同的结果,因为我知道该方法正在寻找本地值

从而:

UK: 2008-04-30T01:00:00.000+0100

US: 2008-04-30T20:00:00.000-0400
Run Code Online (Sandbox Code Playgroud)

但是我希望得到一个Date对象,它只包含日期和时间值"2008-04-30T00:00:00",完全忽略任何时区.

我怎样才能做到这一点?

正如我之前提到的,我尝试使用 SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss") 但总是得到相同的结果.

任何帮助都会非常感谢干杯.

小智 9

发现您可以使用以下代码清除时区:

Calendar cal = Calendar.getInstance(); cal.clear(Calendar.ZONE_OFFSET);


小智 1

您是否使用标准构造函数来初始化日历?如果您使用允许指定时区和区域设置的构造函数会怎么样?

protected Calendar(TimeZone zone, Locale aLocale)
Run Code Online (Sandbox Code Playgroud)