「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. サーバに日付を送る方法
- 7. swift iOSでローカル日付にUTC日付を取得する
- 8. システム日付を日付形式に日付データ型に変換する方法
- 9. のJava日付形式 - GMT +04:00
- 10. TypeScriptで日付に日付を追加する方法
- 11. OnDateSetListenerから日付に日付を取得する方法
- 12. DatePickerFragmentから日付文字列を転送するには?
- 13. 日付をGMTに変換すると精度は0です
- 14. 日付の平日を得る方法
- 15. 日付範囲の開始日をSQL Serverの日付から日付に換算する方法
- 16. 日付をOracleデータベースに追加する日付日付
- 17. ノードのローカル日付react-intl
- 18. `ng-model`の日付オブジェクトから日付をフォーマットする方法
- 19. 現在の日付をGMTに変換する
- 20. UnixのタイムスタンプをGMTの日付に変換するPHP
- 21. JavaScriptのローカル日付と時刻を指定する方法
- 22. 日付ではなく日付順で表示する方法
- 23. 日付で並べ替え、日付内でシャッフルする方法
- 24. 日付 - 日付+日HANA
- 25. PHP GMTがパラメータになる場合の日付の取得方法
- 26. javaスクリプトでgmt日付に変換する関数
- 27. 日付の値から日月の日付を取得する方法
- 28. pカレンダーの転送日付形式を変更する
- 29. vbaをmsアクセスで使用してデータベーステーブルの日付と日付の間に日付を挿入する方法
- 30. 日付の書式を変更して日付を日付に追加する方法