【发布时间】:2013-12-05 09:16:20
【问题描述】:
我在比较 NSDate 时遇到了一些问题,因为它们的格式不同。
从一方面来看,我有一个 NSDate,他看起来像这样:
2013-12-05T10:12:00.120Z
另一方面,我有另一个 NSDate,看起来是这样的:
2013-12-01 10:1200 +00000
我的问题是,我怎样才能让第一个 NSDate 看起来像第二个?
更重要的是,120Z是什么意思?我想这是时区,但我不太确定。
顺便问一下,有没有什么办法可以格式化NSDate's并根据时区小时差更新时间?
非常感谢!
已编辑:
要获得第一个 NSDate,我执行以下操作(我需要获得文件的最后打开日期):
MDItemRef item = MDItemCreate(NULL, (__bridge CFStringRef)filePath);
NSDate *date = (NSDate*)CFBridgingRelease(MDItemCopyAttribute(item,
kMDItemLastUsedDate));
为了获得第二个 NSDate,我执行以下操作:
NSDate* threeDaysAgo = [NSDate dateWithTimeIntervalSinceNow:-259200];
【问题讨论】:
-
所以你有两个 NSStrings,每个代表一个日期和时间,但使用不同的格式,你想要做的是将它们转换为 NSDate 对象?
-
两者都是 NSDates,我只是这样得到一个: NSDate* threeDaysAgo = [NSDate dateWithTimeIntervalSinceNow:-259200];我接到另一个电话给 CFBridgingRelease。这就是为什么我得到两种不同的格式。当尝试比较它们时,我得到一个错误
-
NSDates 没有格式。您能说明日期是如何创建的以及如何比较它们吗?
-
“120Z 是什么意思?” - 10:12:00.120 是时间,120 是毫秒部分。 Z 代表“Zulu”,与 GMT 相同。
-
非常感谢大家,我刚刚更新了我的问题以便更容易理解所有内容
标签: objective-c nsdate nsdateformatter