0
林特林的XMLGregoriaCalnder轉換爲特定timezome轉換XMLGregorianCalender到不同時區
基本上我通過XML
<Date>2015-01-12</Date>
<Time>11:45:12</Time>
Unmarchall它
<Date>2015-01-12T11:45:12</Date>
現在我需要接受一次來自中國在將其插入DB之前將其轉換爲Newyork時間
public static XMLGregorianCalendar getDate(final XMLGregorianCalendar date) {
TimeZone myzone = TimeZone.getTimeZone("America/New_York");
System.out.println(date + "..........");
GregorianCalendar calendar = new GregorianCalendar();
calendar.setTimeZone(myzone);
calendar.set(date.getYear(), date.getMonth(), date.getDay(),
date.getHour(), date.getMinute(), date.getSecond());
XMLGregorianCalendar xmlGregorianCalendar = null;
if (date != null) {
try {
xmlGregorianCalendar = DatatypeFactory.newInstance()
.newXMLGregorianCalendar(calendar);
} catch (Exception e) {
e.printStackTrace();
}
}
System.out.println(xmlGregorianCalendar + "..........");
return xmlGregorianCalendar;
}
將輸出:
2014-01-10T11:45:12..........
2014-02-10T11:45:12.063-05:00....................
我需要輸出什麼:
2014-01-12T11:45:12..........
2014-01-11T21:45:12..........
任何幫助,不勝感激
嘿男人...工作一種享受...會有可能設置時區?或者是否有比硬編碼小時更安全的方式??? ......再次非常感謝您的回覆......不適當的標記爲正確並且投票一個足夠的代表 – user5435ren
可以使用XMLGregorianCalendar設置時區。 setTimeZone()'調用,看看它[這裏](http://docs.oracle.com/javase/7/docs/api/java/util/GregorianCalendar.html#setTimeZone%28java.util.TimeZone%29)。 – marczeeee
嘿marczeeee,Iv更新了我的問題。 Iv一直試圖實現setTimeZone()...但我只是不能讓它工作...保持輸出同一時間... arrrr – user5435ren