-3

ユーザーのローカル タイム ゾーンの現在時刻の NSDate オブジェクトを指定して、それを真夜中に変更し、UNIX 時刻 (エポックからの秒数) を 00:00 に返すにはどうすればよいですか。

たとえば、現在の日付と時刻が 2013 年 3 月 20 日午後 12 時 42 分である場合、この瞬間を表す NSDate オブジェクトがある場合、どうすれば 1363737600 (2013 年 3 月 20 日 00:00:00) を取得できますか?

4

1 に答える 1

2

このための1つのオプションは、1970年以降の時間間隔を取得し、結果を四捨五入することです。

time_t unixInterval = [someData timeIntervalSince1970];
time_t unixDate = unixInterval / (24*60*60) * (24*60*60);

整数型で2行目を実行する限り、目的の結果が得られます。

于 2013-03-20T02:09:37.543 に答える