我的plist中有一行使用Date类型。我手动设置为1970年1月1日上午12:00:00的日期。我使用plist作为NSUserDefaults
的默认值。当我使用NSUserDefaults
读取值时,它返回1970-01-01 08:00:00 +0000。因此,此检查始终失败:
if ([defaultDateFromPlist isEqualToDate:[NSDate dateWithTimeIntervalSince1970:0]])
// this never evaluates to true since the time is returning 08:00:00
我在plist中输入什么日期以确保默认值等于[NSDate dateWithTimeIntervalSince1970:0]
?
答案 0 :(得分:2)
在Xcode项目导航器中,您可以右键单击plist文件并选择Open as Source Code。这将允许您以原始XML格式编辑文件。
从那里你可以使用“Z”更精确地设置时间。所以你可以这样:
<key>startDate</key>
<date>1970-01-01T00:00:00Z</date>
答案 1 :(得分:1)
时区再次袭击!您要比较的日期是格林威治标准时间1970年1月1日00:00,而不是当地时间00:00,因此您需要在plist中指定日期中的时区。尝试在输出中使用与plist相同的“+0000”后缀,你应该没问题。