web-dev-qa-db-ja.com

Joda DateTimeからUnix DateTime

奇妙なことですが、Joda(Time)DateTimeをUnix DateTime(またはタイムスタンプ、どちらか正しい名前)に変換する結果が見つかりませんでした。これどうやってするの?

28
アレックス

BaseDateTimeDateTimeを含む)から継承するオブジェクトには、メソッドがあります

public long getMillis()

[〜#〜] api [〜#〜] によると:

Java 1970-01-01T00:00:00Zのエポックから)日時のミリ秒を取得します。

したがって、secondsを取得する実用的な例は、次のようになります。

new DateTime().getMillis() / 1000

完全を期すために、 WikipediaによるUNIXタイムスタンプ の定義:

Unix時間(POSIX時間)は、1970年1月1日(木曜日)の協定世界時(UTC)00:00:00から経過した秒数として定義される、瞬時を記述するためのシステムであり、うるう秒はカウントしません

72
reto

Java 8は、日付と時刻を操作するための新しいAPIを追加しました。 Java 8を使用すると、

long unixTimestamp = Instant.now().getEpochSecond();
8
Navrattan Yadav