2014-12-09 58 views
1

我有一個複雜的日期格式,我需要處理它只有日期和時間。我現在的日期格式示例如下。DateFormatter格式:2014-12-08T14:11:32.636Z

當前格式:2014-12-08T14:11:32.636Z

我不知道是什麼的一些字段被註定的。我想從上面的例子給出如下。

firstString = "08-12-2014" 
secondString = "14:11" 

我已經嘗試了很多日期格式,但他們沒有奏效。所以請幫助我。謝謝你的時間。

+0

後你已經嘗試了什麼......我會解決你的問題...... – 2014-12-09 12:10:11

回答

-1
// Date formatter for your date string: 2014-12-08T14:11:32.636Z 
    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
    [dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss.SSS'Z'"]; 

    // Date from your string 
    NSDate *date = [dateFormatter dateFromString:@"2014-12-08T14:11:32.636Z"]; 

    // T => Week Day 
    // S => Fractional Second 
    // Z => zone- Time Zone 


    // Updating to your format for preffered style 
    [dateFormatter setDateFormat:@"dd-MM-yyyy"]; 
    NSString *firstString = [dateFormatter stringFromDate:date]; 
    [dateFormatter setDateFormat:@"HH:mm"]; 
    NSString *secondString = [dateFormatter stringFromDate:date]; 

更多參考:http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns

+0

三江源這麼多。有效。 – 2014-12-09 13:39:58

+0

沒有必要引用所有的標點符號。並且不要在格式字符串中引用'Z'。這會給出錯誤的結果。 – rmaddy 2015-09-30 19:47:45

2
- (NSDate *)formatStringToDate:(NSString *)string 
{ 
    NSDateFormatter *dateFormatter=[NSDateFormatter new]; 
    [dateFormatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"]; 
    NSDate *date = [dateFormatter dateFromString:string]; 
    return date; 
} 

嘗試,這將工作...