Ios 这些是什么类型的日期?
我有一个带有此格式日期的plist:Ios 这些是什么类型的日期?,ios,date,format,Ios,Date,Format,我有一个带有此格式日期的plist: Mar 11, 2013 10:16:31 AM 在我的控制台中显示为 2013-03-11 16:16:31 +0000 而Web服务在控制台中返回的内容如下所示: 2013-03-01T18:21:45.231Z 如何将我的plist日期固定为与web服务相同的格式?关于您的三种日期格式: 第一个是日期格式,当您在Xcode中查看plist中的NSDate,这是当前语言环境中的一个可读日期(但如果您在文本编辑器中查看plist,您将看到它实际上是用
Mar 11, 2013 10:16:31 AM
在我的控制台中显示为
2013-03-11 16:16:31 +0000
而Web服务在控制台中返回的内容如下所示:
2013-03-01T18:21:45.231Z
如何将我的plist日期固定为与web服务相同的格式?关于您的三种日期格式:
NSDate
,这是当前语言环境中的一个可读日期(但如果您在文本编辑器中查看plist,您将看到它实际上是用@“yyyy'-'MM'-'dd'T'HH':'MM':'ss'Z'
格式编写的)说明
方法aNSDate
(例如,您NSLog
aNSDate
)中的默认格式@“yyyy”-“MM”-“dd't'HH”:“MM”:“ss”。“SSS'Z”
,例如:
NSDate *date = [NSDate date];
NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
formatter.locale = enUSPOSIXLocale;
formatter.dateFormat = @"yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'SSS'Z'";
formatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];
NSString *dateString = [formatter stringFromDate:date];
NSLog(@"%@", dateString);
如果希望将日期存储为plist中RFC 3339/ISO 8601格式的字符串(或者,如果需要将NSDate
转换为字符串以传输到web服务,则可以使用此选项)。如上所述,默认的plist格式不会为NSDate
对象保留几分之一秒的时间,因此如果这很关键,将日期存储为上述代码生成的字符串可能会很有用
此日期格式化程序可用于将日期转换为字符串(使用
stringFromDate
),以及将格式正确的字符串转换为NSDate
对象(使用dateFromString
)。如果使用%@
格式打印NSDate,将得到第一个(oops,第二个)表单。第二个(oops,第三个)是字符串。如果需要,可以使用NSDateFormatter格式化NSDate以匹配其他样式。请注意,使用二进制格式(NSPropertyListXMLFormat\u v1\u 0
)写入日期时,日期保留其小数部分。