我搜索了很多次,但没有找到我真正需要的东西, 我写这个是为了查找 UTC 时区:
DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
df.setTimeZone(TimeZone.getTimeZone("Europe/Istanbul"));
String gmtTime = df.format(new Date());
Date gmtTime_ =null;
try {
gmtTime_ = df.parse(gmtTime);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
但是我需要 UTC+2
时区,我怎样才能获得该时区?
最佳答案
如果您愿意切换到一个不错的日期时间库,而不是与 Java bundle 在一起的臭名昭著的麻烦 java.util.Date 和 java.util.Calendar 类,那么请阅读下面的示例代码。
两个不错的 Java 库是 Joda-Time和新的java.time package与 Java 8 bundle 在一起(受到 Joda-Time 的启发,由 JSR 310 定义)。
乔达时间
这里是一些使用 Joda-Time 2.3 的示例代码。
java.util.Date date = new java.util.Date();
// Convert a Date into a Joda-Time DateTime.
// Specify a time zone rather than rely on default.
DateTimeZone timeZone = DateTimeZone.forID( "Europe/Istanbul" );
DateTime dateTime = new DateTime( date, timeZone );
DateTime dateTimeUtc = dateTime.withZone( DateTimeZone.UTC );
转储到控制台...
System.out.println( "date: " + date );
System.out.println( "dateTime: " + dateTime );
System.out.println( "dateTimeUtc: " + dateTimeUtc );
运行时...
date: Mon Mar 31 08:13:37 PDT 2014
dateTime: 2014-03-31T18:13:37.314+03:00
dateTimeUtc: 2014-03-31T15:13:37.314Z
关于java - 如何设置时区 UTC+2?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22750080/