「2016-08-31T02:04:58.893GMT」のような非標準のGMT形式を持つ日付の文字列を取得しました。 "2016-08-31 10:04:58"のような現地時間形式に転送する必要があります。ちなみに、私は中国にいるので、現地時間とGMT時間の間に8時間あります。 ああ、Javaを使用しています。みなさんありがとう。GMT日付をローカル日付に転送する方法
-1
A
答えて
-1
非標準のGMT形式を標準の時刻形式に変換し、適切な組み込み関数を使用して差分を加算または減算する方がよいでしょう。別の関数を使用して、標準の時刻形式を指定された形式に変換することができます。
「2016-12-31 23:00」+ 8hrsなどの複雑なケースを考慮する必要がないので、これは素晴らしいことです。
1
を使用して文字列を解析します。示す
例コード、中間結果:
String input = "2016-08-31T02:04:58.893GMT";
DateTimeFormatter fmt1 = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ss.SSSz");
ZonedDateTime zdtGMT = ZonedDateTime.parse(input, fmt1);
System.out.println(zdtGMT); // prints 2016-08-31T02:04:58.893Z[GMT]
ZonedDateTime zdtChina = zdtGMT.withZoneSameInstant(ZoneId.of("Asia/Shanghai"));
System.out.println(zdtChina); // prints 2016-08-31T10:04:58.893+08:00[Asia/Shanghai]
LocalDateTime ldt = zdtChina.toLocalDateTime();
System.out.println(ldt); // prints 2016-08-31T10:04:58.893
DateTimeFormatter fmt2 = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println(ldt.format(fmt2)); // prints 2016-08-31 10:04:58
関連する問題
- 1. GMT +日付をアンドロイドでローカルに変換する
- 2. NSDateFormatter: 'GMT'の日付文字列をローカルNSDateに変換する方法は?
- 3. MySql GMTの日付とタイムゾーン
- 4. 日付を日付から日付に変換する方法
- 5. DataGridviewからdatetimepickerへ日付データを転送する方法
- 6. Ionic:日付パイプとローカル日付
- 7. サーバに日付を送る方法
- 8. JavaScriptでローカル日付と同等の日付に変換する方法
- 9. swift iOSでローカル日付にUTC日付を取得する
- 10. システム日付を日付形式に日付データ型に変換する方法
- 11. のJava日付形式 - GMT +04:00
- 12. TypeScriptで日付に日付を追加する方法
- 13. OnDateSetListenerから日付に日付を取得する方法
- 14. 送信者のローカル時刻に日付を設定する
- 15. DatePickerFragmentから日付文字列を転送するには?
- 16. GMTの日付をMM/dd/yyyyに変換するには
- 17. UTCの日付をローカルの日付オブジェクトに変換するには?
- 18. 日付をGMTに変換すると精度は0です
- 19. 日付の平日を得る方法
- 20. 日付範囲の開始日をSQL Serverの日付から日付に換算する方法
- 21. 日付をOracleデータベースに追加する日付日付
- 22. `ng-model`の日付オブジェクトから日付をフォーマットする方法
- 23. 日付ピッカー(Xamarinフォーム)で日付を削除する方法
- 24. 入力タイプ= "日付"の日付を解析する方法は?
- 25. CalenderView日付のlistView日付を更新する方法
- 26. ノードのローカル日付react-intl
- 27. PhantomJSローカルISO日付オフ
- 28. UTC即時のローカル日付
- 29. UnixのタイムスタンプをGMTの日付に変換するPHP
- 30. 現在の日付をGMTに変換する