日付を二重値に変換してデータベースに保存しました。ここで、currentDate > myDataBaseDate + 8
時間、つまり、myDataBaseDateに8時間を追加したい。日付を二重値に変換しています。それでは、データベースの保存日から8時間後に取得する方法を教えてください。比較する方法
if (currentDateTime > DateFromdatabaseValue + DateByAdding8HoursInDataBase)
あなたが何をしようとしているのか完全にはわかりませんが、次を使用して別のNSDateに秒単位で時間を追加することでNSDateオブジェクトを作成できます。
- (id)dateByAddingTimeInterval:(NSTimeInterval)seconds
//例現在の時刻に8時間を追加するには:
NSDate *mydate = [NSDate date];
NSTimeInterval secondsInEightHours = 8 * 60 * 60;
NSDate *dateEightHoursAhead = [mydate dateByAddingTimeInterval:secondsInEightHours];
IOS 8以降、より便利なdateByAddingUnit
があります:
//add 8 hours
let calendar = NSCalendar.autoupdatingCurrentCalendar()
newDate = calendar.dateByAddingUnit(.CalendarUnitHour, value: 8, toDate: originalDate, options: nil)
単に使用できます:
NSDate *incrementedDate = [NSDate dateWithTimeInterval:numberOfSeconds sinceDate:[NSDate date]];
NSDate * startdate = datePicker.date;
NSTimeInterval secondsInOneHours = 1 * 60 * 60;
NSDate *dateOneHoursAhead = [startdate dateByAddingTimeInterval:secondsInOneHours];
[dateformate setDateFormat:@"d-MMM-yy HH:mm:ss"];
strDate = [dateformate stringFromDate:dateOneHoursAhead];
データベース値に8 * 3600を追加するだけです(変換されたdouble値が秒を表すと仮定)。