2013-01-04 78 views
1

當前我正在處理NSDateNSDateFormatter日期數後的具體日期

我的問題是我需要用戶指定日期的find the date after 100 days

當前我正在使用這個硬編碼的字符串來查找未來日期。

calendar.maximumDate = [self.dateFormatter dateFromString:@"20/08/2015"]; 

但它是不正確的方式,不與用戶指定的日期一起工作。無論如何要實現這一目標?

請幫幫我。

在此先感謝。

回答

5

像這樣:

// How much day to add 
int addDaysCount = 100; 

// Create and initialize date component instance 
NSDateComponents *dateComponents = [[NSDateComponents alloc] init]; 
[dateComponents setDay:addDaysCount]; 

// Retrieve date with increased days count 
NSDate *newDate = [[NSCalendar currentCalendar] 
          dateByAddingComponents:dateComponents 
              toDate:fromdateHere options:0]; 
+0

感謝您的回答:)它的工作。 –

1

下面是一個例子:在NSDate

NSDate *now = [NSDate new]; 
NSTimeInterval hundredDaysTimeInterval = 3600*24*100; 
NSDate *nowAndAHundred = [NSDate dateWithTimeInterval:hundredDaysTimeInterval sinceDate:now]; 
+1

這是實現此目的的錯誤方法。添加秒不考慮夏時制的變化,並可能導致錯誤的答案 –

+0

感謝您的回答:) –

+0

該死的你是對的!我從來沒有想過這個。謝謝你指出。 – Pierre

0

使用dateByAddingTimeInterval功能。像

int daysToAdd = 100; 
NSDate *maximumDate = [yourDate dateByAddingTimeInterval:60*60*24*daysToAdd]; 
+0

看到我對@ Pierre的回答 –

+0

感謝您的回答:) –

0

請嘗試以下

使用NSDate的實例方法 「 - (ID)dateByAddingTimeInterval:(NSTimeInterval)秒」,並通過(100 * 86400)作爲參數從用戶指定日期起100天后獲取日期。使用nsdate實例的用戶指定日期調用此方法。

+0

查看我對@ Pierre的回答 –

+0

的評論感謝您的回答:) –