[英]Converting JSON string to NSDate occurs an error
這是我收到的需要轉換為NSDate的json字符串值:
2017-04-08T13:51:00.000 + 03:00
這是我轉換為NSDate的信息:
+ (NSDate *)stringDateToDate:(NSString *)aStringDate
{
NSDate *date = nil;
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss:SSS"];
date = [dateFormat dateFromString:aStringDate];
NSLog(@"nsdate: %@", date);
return date;
}
結果它記錄:
nsdate :(空)
似乎日期格式不正確。 如何解決這個問題?
使用以下日期格式符字符串
"yyyy-MM-dd'T'HH:mm:ss.SSSZZZZZ"
使用ZZZZZ
作為時區/時區/時間偏移-例如+03:00
SSS
小數秒-例如123
和最重要的用途.
在秒及其小數之間,而不是:
感謝rmaddy校正
S
和Z
的數量以滿足確切的要求輸入
請注意,您可以擺脫使用SZ
而不是SSSZZZZZ
因為解析器足夠聰明,無論如何都可以對其進行解析。 如果要從日期創建字符串,則需要上面的日期格式化程序字符串。
"yyyy-MM-dd'T'HH:mm:ss.SZ"
有關日期格式化程序字符串的更多詳細信息,請參見Unicode部分。
Date Format Patterns
最后的Z為時間偏移
+ (NSDate *)stringDateToDate:(NSString *)aStringDate
{
NSDate *date = nil;
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss:SSSZ"];
date = [dateFormat dateFromString:aStringDate];
NSLog(@"nsdate: %@", date);
return date;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.