【问题标题】:Convert NSString to NSDate [duplicate]将 NSString 转换为 NSDate [重复]
【发布时间】:2013-01-16 10:45:46
【问题描述】:

可能重复:
Converting NSString to NSDate (and back again)

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

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

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

【问题讨论】:

  • @vivian:我不会对你投反对票(因为你已经得到了很多!),但想告诉你,作为你的金徽章持有者(!)..所以在这里发布任何问题时,只需先做一些研究,然后在需要时发布问题......!谢谢
  • 伙计 - 我不是来投票的 - 如果我得到解决方案 - 我的工作已经完成 - 所以感谢您的关注。有很多免费的人会回答问题只是为了积分 - 为什么不使用这个资源......我喜欢 stackoverflow :)
  • 对于那些正在寻找如何转换下一次时间格式的人:2014-05-12T19:52:56.244Z 以下是适当的日期格式化程序格式:[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZZZ"];

标签: ios objective-c nsstring nsdate


【解决方案1】:

很简单,将 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];

【讨论】:

  • 不是答案。解释上面的代码。
  • 完美运行 :) 谢谢
  • 它很简单,将 NSString 转换为 NSDate 我们使用 NSDateformatter 使用 dateFromString 方法。我们需要为 NSString 提供现有样式的 Dateformatter 样式。
  • @Madhu,是的,现在把它放在你的答案中。代码块是没有解释/一点文档的毫无价值的学习工具。
  • @Madhu 完美答案。谢谢。
【解决方案2】:

您可以使用以下功能:

-(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 值。

干杯!

【讨论】:

    猜你喜欢
    • 2012-12-17
    • 1970-01-01
    • 2014-05-11
    • 2012-08-20
    • 1970-01-01
    • 2011-04-24
    • 2017-04-23
    相关资源
    最近更新 更多