我将时区值存储在数据库中+5:30
或+2:00
或-1:00
我从数据库中获取数据并根据java中的时区更改时间。
在这里,我想知道如何根据保存的时区值获得时间。
答案 0 :(得分:0)
答案 1 :(得分:0)
TimeZone tz = Calendar.getInstance().getTimeZone();
System.out.println(tz.getDisplayName());// (i.e. Moscow Standard Time)
System.out.println(tz.getID());
应该将用户正在使用的计算机设置为的时区。
除非您想通过ping服务器并进行服务器端检查以查看IP来自哪里来使用复杂的解决方案,那么这是您将获得的最接近的解决方案。
答案 2 :(得分:0)
使用SimpleDateFormat
和setTimeZone
String timeZone = "GMT" + offset // offset is the value you store in the db( +5:30, -2:30)
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
format.setTimeZone(TimeZone.getTimeZone(timeZone));
Date date = format.parse("2014-11-19T09:01:02");