2015-12-25 93 views
4

我需要發佈一個NSDate對象使用HTTP POST到parse.com。
我不知道如何轉換它。將NSDate轉換爲JSON日期?

//1 nsdate 
[params setObject:date forKey:kKeyDate]; 

//2 nsstring 
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd T HH : mm : ss.SSSZ"]; 
NSString *newString = [dateFormat stringFromDate:date]; 
[params setObject:newString forKey:kKeyDate]; 

參數在Http請求的主體中被序列化。我知道我所做的其他事情都是正確的,因爲如果我發表評論將NSDate添加到參數中,那麼它就可以工作。

+0

這可以幫助你嗎? http://stackoverflow.com/questions/4999396/how-to-parse-a-date-string-into-an-nsdate-object-in-ios – ZHZ

+0

我不明白,如果第二個選項的作品,那麼什麼是問題? –

+1

使用'「yyyy-MM-dd'T'HH:mm:ssZ」' – SwiftArchitect

回答

4

試試這個..

NSDate *CurrentDate = [NSDate date]; 
NSDateFormatter *DATEFORMATER = [[NSDateFormatter alloc]init]; 
[DATEFORMATER setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss.SSS'Z'"]; 
[DATEFORMATER setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]]; 
NSString *DATE_STRING = [DATEFORMATER stringFromDate:CurrentDate]; 
1

按照Parse.comdocumentation

{ 
    "__type": "Date", 
    "iso": "2011-08-21T18:02:52.249Z" 
} 

對象 -

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
[dateFormat setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZ"]; 
NSString *newString = [dateFormat stringFromDate:date]; 
[params setObject:newString forKey:kKeyDate]; 
2

如果您使用的是iOS 10.0以上,使用ISO8601Da teFormatter類。

相關問題