我是iphone开发新手。我解析XML URL并在表格视图中显示标题,日期和摘要。我注意到有些日期很老,例如“Wed,1969 Dec 19:00:00 - 0500“,所以我不想显示比当年大1岁的日期。怎么做?我使用this网站的示例代码进行解析并显示详细信息。请帮助我。谢谢。如何在iphone中比较年份与当前年份?
0
A
回答
3
处理日期(NSDate类)是一件相当痛苦的事情,它给我带来了很多麻烦和愤怒。
基本上你有不同的方法:
1)从您的日期组件,并将它们与您的参考日期.. 可能是这个样子:
//因为你有一个NSDate对象称为dateOfSearch
unsigned int unitFlags = NSDayCalendarUnit|NSYearCalendarUnit;
NSDateComponents *comp;
NSCalendar *calendar = [NSCalendar currentCalendar];
comp = [calendar components:unitFlags fromDate:dateOfSearch];
NSInteger *year = [comp year];
//年否no包含dateOfSearch对象包含的年份。 //介意你:这是一个基本的例子向您展示如何提取一个NSDate对象
2)使用的NSDate的timeReferenceSince1970
或其他“等价物”做对比的一年(容易)
的NSDate的timeReference方法返回两个referenceDates
之间的秒量,使一个很好的办法是
NSDate *today = [[NSDate alloc] init] //today
NSDate *pastDate = [self getPastDateFromWhereEver];
NSTimeInterval *difference = [pastDate timeIntervalSinceDate:today];
如果(区别< .....)
希望帮助
欢呼
2
除了讪讪的答案,并寻找到您的示例代码后,你有你的日期字符串转换为一个NSDate的对象:
NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss ZZZ"];
NSDate *myDate = [dateFormatter dateFromString:@"Wed, 31 Dec 1969 19:00:00 -0500"];
相关问题
- 1. 如何比较表中的数据与当前年份和即将过去的年份
- 2. 比较年份是否在今年之前
- 3. 如何将年份更改为当前年份?
- 4. Python:如何计算btw当前年份和年份的差异?
- 5. 如何比较日期和年份?
- 6. 如何提取“where”区域中的timestamp字段的年份并使用postgres 9.6比较当前年份?
- 7. PHP:如果不是当前年份,写出年份,时间戳
- 8. 如何在vb.net中将生日的年份更改为当前年份
- 9. 与mongodb中的月份或年份进行比较的日期
- 10. Postgresql查询当前年份
- 11. 如何比较sql语句中的月份和年份?
- 12. excel如何显示当前的月份和年份与空间
- 13. 如何在JAVA中从MySQL获取当前年份和月份?
- 14. 如何显示当前年份?
- 15. Calendar.getInstance()如何知道当前年份?
- 16. 如何比较日期值(xsd:date)与SPARQL中的年份?
- 17. 比较月份和年份与数据库表
- 18. 如何在Angular JS中创建'<<当前月份 - 当前年份''?
- 19. 在SQL查询中比较之前添加年份列
- 20. 如何获得当前日期,月份,年份在斯卡拉
- 21. 在30天内获取行,当年是当前年份,月份是当前月份,日期是字符串
- 22. 将年份范围[1960年当前年份]添加到组合框
- 23. 如何比较年份与时间戳记日期
- 24. 如何比较两个日期与momentJS忽略年份值?
- 25. T-SQL:从月份列中合并当前年份和月份
- 26. Ruby on Rails中的当前年份
- 27. ASP.NET MVC中的当前年份3
- 28. 将当前年份插入到TextView中
- 29. 获取当前月份和当前年份的天数
- 30. 如何设置我的年份选择器读取当年的最大年份
谈论NSDateFormatters ...他们可能是世界上最资源匮乏的元素:)...特别是在解析很多元素时,要小心你只创建一次(读取:alloc,init)一次..以防万一想知道你的表现如何。 – samsam 2010-04-20 15:54:59