0

我正在从 RSS 提要中提取数据。提要中的键之一是表示项目创建日期和时间的字符串。

我正在尝试将此字符串值转换为 NSDate。字符串值从 RSS 提要返回为:2009-11-18T22:08:00+00:00

我尝试了以下代码无济于事:

    NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyyMMdd HH:mm"];
NSDate *myDate = [df dateFromString: [[storedDates objectAtIndex:indexPath.row] objectForKey: @"UsersDate"]];

理想情况下;除了将值转换为 NSDate 值之外,我还想使用手机上的本地化日期格式对其进行格式化。

任何指针都会有很大帮助。

亲切的问候

4

2 回答 2

6

要检索 dateFormat:

NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
NSDate *myDate = [df dateFromString: [[storedDates objectAtIndex:indexPath.row] objectForKey: @"UsersDate"]];

如果您想根据用户的区域设置格式化时间和日期,可以使用预定义的格式:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterShortStyle];
[dateFormatter setTimeStyle:NSDateFormatterLongStyle];
NSLog(@"%@",[dateFormatter stringFromDate:someDate]);
[dateFormatter release]; // don't forget to release the dateformatter    

查看文档以查看最适合您的格式化程序。

于 2009-11-19T12:39:49.613 回答
0

实际上 RSS 提要中的日期形式可能会有所不同,因此解析它的最佳方法如下

[NSDate dateFromInternetDateTimeString:processedText formatHint:DateFormatHintRFC822];

这不是一个标准函数,它的库可以在这里找到https://gist.github.com/953664

于 2012-08-19T11:54:39.697 回答