ある時点からの相対的な日時を取得する - Objective-C プログラミング

PROGRAM


相対的に時間を取得する

NSDate クラスに用意されている dateWithTimeIntervalSinceNow メソッドを利用することで、ある日時を基準にして、そこから指定した秒数が経過した日時を取得することが可能です。

 

例えば、今から 1 時間後の日付を取得したいとします。

このとき、次のようにして "今" から 3600 秒経過した時刻を取得することで、1 時間後の日付を取得することが出来ます。

// 現時点から 3600 秒経過した時点の日時を取得します。

NSDate date = [NSDate dateWithTimeIntervalSinceNow:3600];

過去の時間を取得したい場合には、経過秒数として負の値を指定します。例えば 5 分前の日付が欲しい場合には、-300 とします。

他にも dateWithTimeInterval:SinceDate: メソッドを利用することで、任意の日時からの相対的な日時を取得することも可能です。同様に、1970/01/01 からの相対的な日時を得る dateWithTimeIntervalSince1970: というメソッドもあります。


[ もどる ]