您的位置:首页 > 其它

NSDate 的一些操作(比较、创建、在现有date加减一定时间等)

2013-01-31 16:22 459 查看
创建当前时间

NSDate *date = [NSDate date];


从现在开始的24小时

NSTimeInterval a_day = 24*60*60;

NSDate *tomorrow = [NSDate dateWithTimeIntervalSinceNow:a_day];

根据已有日期创建日期

NSTimeInterval a_day = 24*60*60;
NSDate *date = [NSDate date];
NSDate *tomorrow = [date addTimeInterval: date];


日期比较

BOOL isEqual = [date isEqualToDate:tomorrow];
if(isEqual){
NSLog(@"equal");
}


//获取较早的日期

NSDate *earlier_date = [tomorrow earlierDate:date];
NSLog(@"earlierDate  = %@",earlierDate);


//较晚的日期

NSDate *laterDate = [tomorrow laterDate:date];
NSLog(@"laterDate  = %@",laterDate);


//两个日期之间相隔多少秒

NSTimeInterval secondsInterval= [date timeIntervalSinceDate:tomorrow];
NSLog(@"secondsInterval=  %lf",secondsInterval);


//通过NSCalendar类来创建日期

NSDateComponents *comps = [[NSDateComponentsalloc]init];
[comps setMonth:01];
[comps setDay:31];
[comps setYear:2013];
NSCalendar *calendar = [[NSCalendaralloc]initWithCalendarIdentifier:NSGregorianCalendar];
NSDate *date = [calendar dateFromComponents:comps];


//从已有日期获取日期

unsigned units  = NSMonthCalendarUnit|NSDayCalendarUnit|NSYearCalendarUnit;
NSDateComponents *_comps = [calendar components:units fromDate:date];
NSInteger month = [_comps month];
NSInteger year = [_comps year];
NSInteger day = [_comps day];
//NSDateFormatter实现日期的输出
NSDateFormatter *formatter = [[NSDateFormatteralloc]init];
[formatter setDateStyle:NSDateFormatterFullStyle];//直接输出的话是机器码
//或者是手动设置样式[formatter setDateFormat:@"yyyy-mm-dd"];
NSString *dateString = [formatter stringFromDate:date];
NSLog(@"dateString = %@",dateString);
NSLog(@"formater = %@",formatter);


//获取日期格式对象

- (NSDateFormatter *)getDateFormatter {
if (dateFormatter == nil) {
dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
}
return dateFormatter;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐