日付タイムゾーンは「アメリカ/ Punta_Arenas」場所のIDを見つけることで問題を持っています

ArunBabuVijayanath:

場所「アメリカ/ Punta_Arenas」の時間帯を取得しようとしたとき、私は例外を取得しています。私はジョダのLocalDateTimeを使用しています。

import org.joda.time.{DateTime, DateTimeZone}
val timezone = DateTimeZone.forID("America/Punta_Arenas")

したがって、上記の文は次の例外をスローしています

java.lang.IllegalArgumentException: The datetime zone id 'America/Punta_Arenas' is not recognised

私は場所のタイムゾーンを取得することができます任意の方法はありアメリカ/ Punta_Arenasはすべてのヘルプは大歓迎です。

私だけ :

ジョダタイム

ジョダタイムはとして知られているタイムゾーンデータの独自のコピー運ぶのtzdataをタイムゾーン定義の変更なので、このファイルは、更新が必要な場合があります。

可能な場合は、使用しているジョダ時のバージョンを最新に最初のアップグレードを言及しておらず、それが動作するはずです:

<!-- https://mvnrepository.com/artifact/joda-time/joda-time -->
<dependency>
    <groupId>joda-time</groupId>
    <artifactId>joda-time</artifactId>
    <version>2.10.1</version>
</dependency> 

java.time

ジョダタイムプロジェクトはメンテナンスモードになります。それの作成者、スティーブンColebourneは、JSR 310とその実装をリードするようになったjava.timeをするJava 8で見つかったと後で、。これはジョダ時に公式の後継です。

Javaのではjava.timeパッケージあなたは見つけるでしょうZoneId.ofを

ZoneId zoneId = ZoneId.of("America/Punta_Arenas");

ThreeTen、バックポート

多くのjava.timeの機能がでJava 6&7にバックポートされThreeTen-バックポートのプロジェクト、スティーブンColebourne率いる別のプロジェクト。

そこにはありますorg.threeten.bp.ZoneIdクラスを。

<!-- https://mvnrepository.com/artifact/org.threeten/threetenbp -->
<dependency>
    <groupId>org.threeten</groupId>
    <artifactId>threetenbp</artifactId>
    <version>1.3.8</version>
</dependency>

コードは、異なるインポートして上記と同じになります。

import org.threeten.bp.ZoneId;
ZoneId zoneId = ZoneId.of("America/Punta_Arenas");

役に立つといいですが。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=189122&siteId=1