我的代碼使用-Duser.timezone = UTC運行。從字符串「2016-09-14T00:00:00.000-07:00/2016-09-15T00:00:00.000-07:00」確定時區
我期待從字符串中創建正確時區的間隔。 例如:
「2016-09-14T00:00:00.000-07:00/2016-09-15T07:00:00.000-07:00」
Interval.parse(str)
應該給我
[2016-09-14/2016-09-15] in PST。
但是,總是給我一個UTC的時間間隔,而不是PST的B/C的-Duser.timezone = UTC選項。
我知道的唯一的辦法來解決,這是繁瑣且包括以下步驟:
- 解析字符串
- 確定偏移
查找內容時區是抵消對應。 (白名單?或某人已有名單?)
然後自己創建一個新的間隔。
有沒有更好的方法?
你傳遞的是整個'日期/ date'字符串解析功能?這只是應該處理一個日期/時間,而不是找出你想要的兩個中的哪一個。你應該在'/'上將字符串分成兩部分,然後將其中一個結果值傳遞給解析器。 –
您不能像'-07:00'那樣將固定偏移量映射到像PST這樣的時區縮寫或像America/Los_Angeles這樣的時區。有太多的含糊之處。閱讀[時區標記wiki](http://stackoverflow.com/tags/timezone/info)中的「Time Zone!= Offset」。另外,考慮到美國的'-07:00'根本不是'PST',而是'MST'或'PDT'。 –