簡體   English   中英

Java 中的 XMLGregorianCalendar,沒有時區

[英]XMLGregorianCalendar in java, with NO Timezone

如何創建沒有時區的 XMLGregorianCalendar? 沒有時間偏移 (0) == UTC,它在輸出中輸出一個“Z”。 my 字段的含義是隱式本地時間,其中位置在 xml 記錄的其他地方指定(例如地址)。

如何創建具有未定義時區(時區不確定)的 XMLGregorianCalendar?

有效的 XML ISO-8601 公歷格式包括:

  • CCYY-MM-DDThh:mm:ss – 沒有祖魯語時間指示符或 TimeOffset 是指相對物理位置的本地時間。
  • CCYY-MM-DDThh:mm:ssZ – 相對物理位置的 DateTime 以 UTC (Zulu) 時間表示,對於本地時間,必須進行轉換。
  • CCYY-MM-DDThh:mm:ss+05:30 相對物理位置的 DateTime 以與 UTC 偏移 +5 小時 30 分鍾的某個時區表示。 對於本地時間,我們必須首先轉換為 UTC,然后通過偏移 UTC 轉換為本地時間。 無法保證提供的位置是記錄位置的當地時間。

我查看XMLGregorianCalendar的文檔 在頂部的表中,底行,它表示時區是

分鍾數或DatatypeConstants.FIELD_UNDEFINED

因此,讓我們嘗試后一種選擇:

    System.out.println(xcal);
    xcal.setTimezone(DatatypeConstants.FIELD_UNDEFINED);
    System.out.println(xcal);

在一次測試運行中,打印了:

2017-11-30T07:54:05.647+01:00
2017-11-30T07:54:05.647

在我將時區設置為未定義后,它不再打印偏移量。 所以我相信我已經得到了你想要的。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM