2016-12-16 37 views
-1

我通過SOAP的Web服務正從服務器端的日期,我用下面的代碼,甲酸鹽日期NSDateFormat問題在Objective-C

NSString *dateString = @"2017-01-16T11:34:23.2424222+05:30"; 
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
    NSString *formatedDate = [self applyTimezoneFixForDate:dateString]; 
    dateFormat.dateFormat = @"yyyy-MM-dd'T'HH:mm:ssZZZZZ"; 
    NSDate *date = [dateFormat dateFromString:formatedDate]; 

    NSLog(@"Parsed date is %@", date); 

但它返回空值。 任何人都知道正確的日期格式來編譯這個日期?

更新

我正在從我的網絡服務兩個不同的日期格式類型。 其實服務器端發送2017/1/16 11:34:23上午日期和從應用程序方面後xml解析我得到2017-01-16T11:34:23.2424222 + 05:30,在同一服務從應用程序方面蔭得到2015年7月4日上午05時21分47秒日期2015-07-04T05:21:47.083

我關心的是,是否有可能推廣日期格式和轉換所有日期字符串格式NSDate?

回答

2

您還未將millisecond甲酸鹽與您的dateFormate相加,因此將其更改爲yyyy-MM-dd'T'HH:mm:ss.SZ。整體可能會是這樣。

NSString *dateString = @"2017-01-16T11:34:23.2424222+05:30"; 
NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
NSString *formatedDate = [self applyTimezoneFixForDate:dateString]; 
dateFormat.dateFormat = @"yyyy-MM-dd'T'HH:mm:ss.SZ"; 
NSDate *date = [dateFormat dateFromString:formatedDate]; 

NSLog(@"Parsed date is %@", date); 
+0

它的工作,你救了我的時間@Nirav d,謝謝 –

+0

@SivaprasadKm歡迎隊友:) –

+1

確定。我查過了,它的效果很好:) –