您的位置:首页 > 其它

4.NSDate

2016-05-23 15:35 323 查看
NSDate
一般应用

时间比较

获取NSString时间输出与现在的时间差

NSDate

一般应用

//获取当前(格林)时间(与北京相差8个小时)
NSDate *date = [NSDate date];

//获取当前(格林)时间的10秒钟后时间
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:10];

//data转字符串
NSString *str = [date description];

//字符串转data
NSDate *date2 = [str dataUsingEncoding:NSUTF8StringEncoding];

// 随机返回一个将来的时间
[NSDate distantFuture];

// 随机访问一个过去的时间
[NSDate distantPast];


时间比较

//返回比较早的那个时间
[date1 earlierDate:date2];

//返回比较晚的那个时间
[date1 laterDate:date2];

//获取两个时间的时间差
[date1 timeIntervalSinceDate date2];

//日期比较
BOOL isOK = [date1 isEqualToDate: date2];


获取NSString时间,输出与现在的时间差

//网络获取的字符串时间data.time:2016-08-09 18:30:15
//获取当前时间
NSTimeZone *zone = [NSTimeZone systemTimeZone];
NSInteger interval = [zone secondsFromGMTForDate: [NSDate date]];
NSDate *localeTime = [[NSDate date]  dateByAddingTimeInterval: interval];

//将NSString转成NSDate
NSDateFormatter *dateFormatter=[[NSDateFormatter alloc] init];

(格式必须相对应)
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"];

//截取相对应的时间(timeStr:2016-08-09 18:30)
NSString *timeStr = [data.time substringToIndex: 16];

//转换格式
NSDate *examTime = [dateFormatter dateFromString:timeStr];

//输出时间差(-2083100.903982)
NSLog(@"%f",[examTime timeIntervalSinceDate:localeTime]);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: