私のコードは、-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]PST。
しかし、それはいつも-Duser.timezone = UTCオプションのPST b/cではなく、UTCの間隔を与えてくれます。これを解決するために私の知っている
唯一の方法は、面倒であり、次の手順を実行します。
- は
に対応するオフセットその何タイムゾーンの検索をオフセットを決定
- 文字列を解析します。 (ホワイトリスト?誰かが既にリストを持っていますか?)
自分で新しいIntervalを作成してください。
もっと良い方法がありますか?
あなたはparse関数にその全体 '日付/ date'文字列を渡していますか?それはあなたが望む2つのうちのどれを理解するのではなく、ただ1つの日付/時刻を処理することになっています。文字列を '/'で2つの部分に分割し、その結果の値の1つをパーサーに渡す必要があります。 –
'-07:00'のような固定オフセットは' PST'のようなタイムゾーンの省略形や 'America/Los_Angeles'のようなタイムゾーンにマップすることはできません。あまりにも多くのあいまいさがあります。 [タイムゾーンタグwiki](http://stackoverflow.com/tags/timezone/info)の "タイムゾーン!=オフセット"を読んでください。また、米国の「-07:00」は「PST」ではなく、「MST」または「PDT」であると考えてください。 –