我在显示存储为多个日期的日期时遇到问题。 我使用带有long参数的构造函数创建日期对象,然后将日期打印到PDF文件。
但是,与Windows相比,在Linux上运行程序时,我遇到了较旧日期的问题。
以此日期为例:1976年4月25日00:00:00(长值:199231200000L)。如果我使用dateformater来显示日期,它将在Linux和Windows上以不同的方式显示:
在Windows上:1976年4月25日00:00:00 CEST
在Linux上:1976年4月24日23:00:00 CET
文字代表。只需运行以下行即可显示:
DateFormat.getDateTimeInstance( DateFormat.FULL, DateFormat.FULL ).format( new Date( 199231200000L) )
我使用Joda Time获取此测试的日期值:
new org.joda.time.DateTime().withDate( 1976, 4, 25 ).withTime( 0, 0, 0, 0 ).toDate().getTime()
为什么Windows将输出显示为CEST,Linux显示为CET?