这里的last_checked_datetime是我的日期,存储在数据库中,格式为utc格式,
Timestamp ts1=rs9.getTimestamp("last_checked_datetime");
java.sql.Date last_chk=new java.sql.Date(ts1.getTime());
java.util.Date time=new java.util.Date(last_chk.getTime());
java.text.SimpleDateFormat sdf=new java.text.SimpleDateFormat("HH:mm:ss");
String old_time=sdf.format(time);
当我调用此Date()时,它是打印EST时间
String new_time=sdf.format(new Date());
Date date1 = sdf.parse(old_time);
Date date2 = sdf.parse(new_time);
我想要这两个区别但是date1需要utc时间和日期2占用时间,这会导致我的代码中出现障碍? 请建议
答案 0 :(得分:1)
尝试设置默认时区 -
TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
答案 1 :(得分:0)
查看org.joda.time.DateTime
这允许您控制日期所在的时区。
例如:
DateTime.now().withZone(DateTimeZone.UTC).toDate()
答案 2 :(得分:0)
Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("EST"));
//change the timezone
cal.setTimeZone(TimeZone.getTimeZone("UTC"));