【发布时间】:2014-06-21 14:24:08
【问题描述】:
我正在使用 NSDataDetector 读取 NSString 日期/时间并将其交换为 NSDate。
输入 (lastRefreshStampString) 是 2014-05-05 02:54:45 +0000 但是,一旦它被 NSDataDetector 处理,result.date 将变为 2014-05-05 14:54:45 +0000。出于某种原因,它将 02 视为 PM 并交换它。
如何纠正这种行为?
NSLog(@"lastRef:%@",lastRefreshStampString);
__block NSDate *lastRefreshStamp;
//Detect data format
NSDataDetector *detector = [NSDataDetector dataDetectorWithTypes:NSTextCheckingAllTypes error:nil];
[detector enumerateMatchesInString:lastRefreshStampString
options:kNilOptions
range:NSMakeRange(0, [lastRefreshStampString length])
usingBlock:^(NSTextCheckingResult *result, NSMatchingFlags flags, BOOL *stop)
{ lastRefreshStamp = result.date; }];
NSLog(@"lastRef:%@",lastRefreshStamp);
【问题讨论】:
标签: ios nsdate nsdateformatter nsdatadetector