2013-03-12 28 views
2

嗨iam是非常新的ios开发。我想在一周后得到日期。请帮助我,我非常迫切需要。 我使用下面的代码获取当前日期。 NSDate * currentDateTime = [NSDate date];我怎样才能得到一个星期后在ios编程的日期

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 

[dateFormatter setDateFormat:@"EEE,MM-dd-yyyy HH:mm:ss"]; 

NSString *dateInStringFormated = [dateFormatter stringFromDate:currentDateTime]; 

NSLog(@"%@", dateInStringFormated); 

如果非要为2013年12月3日我想买一个星期后,意味着拿到19/03/2013

由于提前的日期为当前日期。

+0

可能重复[链接](http://stackoverflow.com/a/8165201/1031955) – 2013-03-12 05:55:11

回答

12

使用NSDateComponents

NSCalendar *calendar = [NSCalendar currentCalendar]; 
NSDateComponents *comps = [NSDateComponents new]; 
comps.day = 7; 
NSDate *sevenDays = [calendar dateByAddingComponents:comps toDate:[NSDate date] options:0]; 
+0

工作大:)感谢雅各 – Rushabh 2013-03-12 06:06:26

+0

技术上,虽然,它看起来像OP想要“7天”而不是“1周”(标题和内容相冲突)。我相信1周在某些日历中超过7天。虽然这很迂回。 – borrrden 2013-03-12 06:17:56

+0

@borrrden好点。 – 2013-03-12 06:18:57

1
NSDate *todayDate = [NSDate date]; 
NSDateComponents *dateComponents = [[NSDateComponents alloc] init]; 
[dateComponents setDay:+7]; 
NSDate *afterSevenDays = [[NSCalendar currentCalendar] dateByAddingComponents:dateComponents toDate:todayDate options:0]; 
NSLog(@"todayDate: %@", todayDate); 
NSLog(@"afterSevenDays: %@", afterSevenDays); 
1
NSCalendar *calendar=[NSCalendar currentCalendar];  
    NSDateComponents *components = [[NSDateComponents alloc]init]; 
components.day = 7; 
NSDate *fireDate =[calendar dateByAddingComponents:components toDate:[NSDate date] options:0]; 
相关问题