3

過去に 10 年以上経過しているかどうかを確認する必要があるDateTimeオブジェクトがあります (証明書の期限切れを考えてください)。私はJoda-Timeを初めて使用しますが、どのように行うのですか? ご協力いただきありがとうございます。

4

2 に答える 2

4

DateTimeクラスのドキュメントを確認することをお勧めします。しかし、あなたを動かすためだけに、チェックは次のようになります。

1)10年前を表すDateTimeを作成する必要があります...

// Build a DateTime for exactly 10 years ago.

DateTime tenYearsAgo = new DateTime(); // should give you a DateTime representing 'now' 
tenYearsAgo = tenYearsAgo.minusYears(10);            // should give you 10 years ago

2)...そしてDateTime.isBeforeを使用して比較します。

// Let's assume the DateTime you're comparing is called 'myDateTime'.

if (myDateTime.isBefore(tenYearsAgo)) { /* do something */ }
else { /* do something else */ }

Jodaがあなたのために抽象化する素晴らしい仕事をするカレンダーにはいくつかの微妙な点があることに注意してください。これに深く入り込む前に、本当にドキュメントを勉強したいと思うでしょう。

于 2010-07-07T19:37:56.273 に答える
0

私はjodaで働いていません。
役立つかどうかを確認してくださいYears.yearsBetween(下のリンク)。

のように見えるかもしれませんYears.yearsBetween(myDateTime, new DateTime());

[1] http://joda-time.sourceforge.net/api-release/org/joda/time/Years.html#yearsBetween(org.joda.time.ReadableInstant,%20org.joda.time.ReadableInstant)

于 2010-07-07T19:41:03.790 に答える