iOS学习之路 获取日期间隔方法是本文要介绍的内容,不多说,我们之间来看内容。
这里要使用ios有关的日期时间api:
NSDate,类似java里面的Date对象,是对从1970-1-1毫秒数的封装,可记录时间;
NSDateFormatter,类似java中的DateFormat相关的api,用于日期对象的格式化或者字符串解析为日期对象。
首先,创建一个日期格式化对象:
- NSDateFormatter *dateFormatter=[[NSDateFormatter alloc] init];
- [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm"];
然后,创建了两个日期对象:
- NSDate *date1=[dateFormatter dateFromString:@"2010-3-3 11:00"];
- NSDate *date2=[dateFormatter dateFromString:@"2010-3-4 12:00"];
创建日期对象,是通过字符串解析的。
然后取两个日期对象的时间间隔:
- NSTimeInterval time=[date2 timeIntervalSinceDate:date1];
这里的NSTimeInterval 并不是对象,是基本型,其实是double类型,是由c定义的:
- typedef double NSTimeInterval;
再然后,把间隔的秒数折算成天数和小时数:
- int days=((int)time)/(3600*24);
- int hours=((int)time)%(3600*24)/3600;
- NSString *dateContent=[[NSString alloc] initWithFormat:@"%i天%i小时",days,hours];
小结:iOS学习之路 获取日期间隔方法的内容介绍完了,希望本文对你有所帮助。