我从收到的字符串日期创建一个日历对象。
Calendar cal = Calendar.getInstance();
String date = "example Mon, 22 Oct 2012 23:58:31 GMT";
SimpleDateFormat sdf = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z");
sdf.setTimeZone (TimeZone.getTimeZone ("PST"));
try {
cal.setTime(sdf.parse(date));
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println("date "+sdf.format(cal.getTime()));
此日期将 gmt 时间转换并打印为 pst 没有问题。
然后我循环遍历元素对象的数组并添加秒数
int offset = element.getSeconds;
cal.add(Calendar.SECOND, offset);
System.out.println("times cal offset: " + cal.getTime());
此 cal 现在打印服务器时间(即东部时间),而不是上面打印的转换后的 gmt。添加秒时,是否会绕过从字符串 gmt 日期创建的 cal?
谢谢!