如何设置java时区?

我的系统时间不同于java的新Date()告诉(+4小时),
所以我认为这是因为一些Java设置。
我怎样才能让java时间像我的Linux系统时间一样?
(通过编辑一些configuration文件)

http://minaret.biz/tips/timezone.html

我不确定,但可能有帮助。

您可以在应用程序启动时使用TimeZone.setDefault(..) ,或将时区作为命令行参数传递: -Duser.timezone=GMT

如果您想以编程方式更改时区,则可以使用:

 TimeZone.setDefault(TimeZone.getTimeZone("UTC")) 

我更喜欢这种方法,因为它不依赖于人们记住用正确的时区参数运行我的代码。

 Calendar calendar = Calendar.getInstance(TimeZone.getDefault()); Date myDate = calendar.getTime(); System.out.println(myDate); 

这段代码是否打印正确的日期/时间? 否则,还有其他一些问题。

这段代码帮了我。

 TimeZone tzone = TimeZone.getTimeZone("Singapore"); // set time zone to default tzone.setDefault(tzone); 

使用System.getCurrentTimeInMillis();

然后拿一个日历实例并设置你的时间..