干擾抓具體日期我有一個XMLGregorianCalendar
,我想轉換爲Java Date
對象,但是當我試圖隱蔽這樣的:沒有時區與的XMLGregorianCalendar在Java中
2013-11-19T00:00:00-00:00
我總是帶有日期一天後面的價值。
Mon Nov 18 17:00:00 MST 2013
我只想要一個包含11/19/2013
的日期對象。
干擾抓具體日期我有一個XMLGregorianCalendar
,我想轉換爲Java Date
對象,但是當我試圖隱蔽這樣的:沒有時區與的XMLGregorianCalendar在Java中
2013-11-19T00:00:00-00:00
我總是帶有日期一天後面的價值。
Mon Nov 18 17:00:00 MST 2013
我只想要一個包含11/19/2013
的日期對象。
我只是做這個,
Date startDate = new Date(request.getStartTime().getYear(), request.getStartTime().getMonth(), request.getStartTime().getDay(), 0, 0, 0);
如上評論,你得到的結果是正確的 - 它在時間的同一時刻。午夜UTC是前一天的5點MST。也許你應該看看爲什麼你的時間是「-00:00」,而不是「-07:00」(MST)......但在同時,我想你可以試試這個:
public static void main(String... args) throws DatatypeConfigurationException {
XMLGregorianCalendar xcal = DatatypeFactory.newInstance().newXMLGregorianCalendar("2013-11-19T00:00:00-00:00");
Calendar c = xcal.toGregorianCalendar();
c.setTimeZone(TimeZone.getDefault());
Date d = c.getTime();
System.out.println(d);
}
打印出Tue Nov 19 00:00:00 EST 2013
,並將在一天的其他時間,而不僅僅是午夜。
有沒有一些代碼? –
只是頭向上我沒有辦法修改XmlGregorianType。 –
價值並不落後一天。這是時間確切的時間...'2013-11-19T00:00:00-00:00'是UTC的午夜,這是您的時區前一天的5PM Mountain標準時間。 – dcsohl