首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSDataDetector & NSDate返回当前日期

NSDataDetector & NSDate返回当前日期
EN

Stack Overflow用户
提问于 2014-04-21 11:39:37
回答 1查看 440关注 0票数 0

我正在尝试使用包含日期/时间的NSString,并在其中创建一个NSDate对象,这样我就可以相应地操作。

我以前使用过NSDataDetector,没有问题。但是,当我现在尝试时,detectedDate将返回当前日期,而不是字符串中找到的日期。

请有人解释一下,为什么这不会像我在过去使用的那样从字符串中返回日期?或者建议如何才能最好地做到这一点?

非常感谢。

代码语言:javascript
复制
NSString *myDate = @"2014-03-13T12:31:00-07:00";

__block NSDate *detectedDate;

NSDataDetector *detector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingAllTypes error:nil];
[detector enumerateMatchesInString:myDate
                           options:kNilOptions
                             range:NSMakeRange(0, [myDate length])
                        usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop)
 { detectedDate = result.date; } ];
NSLog(@"Result:%@",detectedDate);
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-27 17:00:20

见@gaige在评论中的回答,他说:-

通过从字符串中移除"T“,我对此进行了快速测试,它捕获了正确的日期。除非您知道您要在文本块中获得ISO格式日期(相对于某些格式化数据),否则您可能会没事。对于您知道要得到日期的格式化数据,我建议Peter的ISO8601 NSDateFormatter是一个很好的解析选择。

谢谢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23196672

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档