4

可能重复:
将 NSString 转换为 NSDate(然后再返回)

我向 flickr api 发出请求,它以以下格式返回日期

"2013-02-01T06:25:47Z"

我如何将其转换为 NSDate 格式?

4

2 回答 2

22

这是一个简单的,将 NSString 转换为 NSDate 我们使用 NSDateformatter 使用 dateFromString 方法。我们需要为 NSString 提供现有样式的 Dateformatter 样式

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
NSDate *date = [dateFormatter dateFromString:@"2013-02-01T06:25:47Z"];
NSTimeZone *pdt = [NSTimeZone timeZoneWithAbbreviation:@"PDT"];
[dateFormatter setTimeZone:pdt];
[dateFormatter setDateFormat:@"HH:mm:ss zzz"];
[dateFormatter setDateFormat:@"K:mm a, z"];
NSString * updated String = [dateFormatter stringFromDate:date];
于 2013-02-01T06:31:49.987 回答
3

您可以使用以下功能:

-(NSDate *)getDateFromString:(NSString *)pstrDate
{
    NSDateFormatter *df1 = [[[NSDateFormatter alloc] init] autorelease];
    [df1 setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"];
    NSDate *dtPostDate = [df1 dateFromString:pstrDate];
    return dtPostDate;
}

希望,对你有帮助。

此函数将接受您的字符串日期并返回 NSDate 值。

干杯!

于 2013-02-01T06:38:58.753 回答