我有一个 XMLGregorianCalendar 实例,我需要将时区设置为“America/New_York”。该类有一个设置时区的方法。由于格林威治标准时间比东部时间早 4 小时,因此“America/New_York”时区是否这样设置?
gregorianCalendar.setTimezone(-4);
最佳答案
我最近提出了这个解决方案,并且对我来说效果很好。
Date date = format.parse(beginTime);
GregorianCalendar cal = new GregorianCalendar();
cal.setTime(date);
XMLGregorianCalendar xmlGregCal = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
TimeZone timeZone = TimeZone.getTimeZone("America/New_York");
int minutes = timeZone.getOffset(cal.getTimeInMillis()) / 1000 / 60;
xmlGregCal.setTimezone(minutes);
关于java - 设置 XMLGregorianCalendar 的时区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62064907/