Ján*_*nos 2 mysql objective-c nsdate nsdateformatter
MySQL返回此日期时间:2014-05-07T16:58:44.000Z
如何使用datetime格式创建NSDate?
我发现这一点,但它不起作用:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'Z'"];
NSDate *date = [df dateFromString: valueStr];
Run Code Online (Sandbox Code Playgroud)
您的格式字符串已关闭,但您也想要指定毫秒SSS:
[df setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSX"];
Run Code Online (Sandbox Code Playgroud)
此外,Z您的日期字符串代表"Zulu"(即GMT/UTC),因此您dateFormat应该使用Z或X不使用引号,以便正确解析字符串的时区.此外,如果您要从日期构建字符串,请确保相应地设置您的时区.您还想设置您的语言环境:
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.SSSX";
formatter.timeZone = [NSTimeZone timeZoneForSecondsFromGMT:0];
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅技术问答QA1480.
你也可以使用更新的NSISO8601DateFormatter,它可以让你从一些杂草中解脱出来:
NSISO8601DateFormatter *formatter = [[NSISO8601DateFormatter alloc] init];
formatter.formatOptions = NSISO8601DateFormatWithFullDate | NSISO8601DateFormatWithFullTime | NSISO8601DateFormatWithFractionalSeconds;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1499 次 |
| 最近记录: |