2013-01-21 42 views
-2

我有一個字符串2013-01-10T08:24:12.503這是'日期'和'時間'。這是我從我的服務器接收的格式。如何更改ios中的字符串的dateformat

我想以2013-01-10 08:24:12的格式顯示。 我該怎麼做?

請幫我一把。

+0

試試這個...... NSString * string = @「2013-01-10T08:24:12.503」; string = [string stringByReplacingOccurrencesOfString:@「T」 withString:@「」]; NSLog(@「string ..%@」,string); –

+0

@Sudha發佈它作爲回答花花公子 –

+0

@Dpk如果我將它作爲評論發佈,會出現錯誤? –

回答

5

您需要esacpe的T

NSString *string = [NSString stringWithFormat:@"2013-01-10T08:24:12.503"]; 
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSS"]; 

使用上述格式得到正常NSDate

NSDate *formattedDate = [dateFormatter dateFromString:string]; // 2013-01-10 02:54:12 +0000 

重新設置格式你想

[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"]; 

獲取String你想,

NSString *curDate = [dateFormatter stringFromDate:date]; // 2013-01-10 08:24:12 

檢查這個link,在那裏我得到參考。

+1

+1爲非常相同的答案,我即將發佈。在格式化爲默認樣式時不需要再次格式化。 –

+0

@ arthan.v非常感謝,你已經解決了我的問題。 –

+0

+1,正確答案!所有其他解決方案在這裏都不起作用 –

-2
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 

[dateFormatter setDateFormat:@"yyyy-MM-dd 'at' HH:mm"]; 



NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:162000]; 



    NSString *formattedDateString = [dateFormatter stringFromDate:date]; 

    NSLog(@"formattedDateString: %@", formattedDateString); 
+0

什麼是162000? –

+0

@iPatel:什麼是硬編碼的值162000 –

+0

http://samplecodebank.blogspot.in/2011/05/nsdate-datewithtimeintervalsincereferen.html檢查這個比較:) – iPatel