2012-04-11 8 views
0

私は文字列formate広告の日付を取得しています "2012-04-11T07:51:10 + 0000" & "11-04-2012"とNSDateに変換します。私はこのために "setDateFormat"を使う方法を理解していません。 [dateFormatter setDateFormat:@ "yyyy" - 'MM' - 'dd'T'HH': 'mm': 'ss' + 'zzzz'];これは私がやっていることです。日付変換の仕方は?

助けてください。

NSDateを取得しても、再び文字列に変換したいと思っています。 2012年11月4日のみ。 私はgglで検索しました。 。しかし、満足のいく結果:(

に助けてください

答えて

0

をここに日付を生成するための文字列を解析する方法である:

NSString *dateString = @"2012-04-11T07:51:10+0000"; 
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
formatter.dateFormat = @"yyy-MM-dd'T'HH:mm:ssZ"; 
NSDate *date = [formatter dateFromString:dateString]; 
NSLog(@"Date: %@", date); 

次のように今、あなたは、日付の新しい文字列表現を生成することができます。

formatter.dateFormat = @"dd-MM-yyyy"; 
NSString *newDateString = [formatter stringFromDate:date]; 
NSLog(@"New string: %@", newDateString); 
// 11-04-2012 

dateFormatあなたたちの問題点'MM'などのすべての記号をエスケープする必要はなく、のタイムゾーンを解析するための正しい記号ではないことを使用してください。

詳細については、documentationをご覧ください。

+0

schありがとう: – PriyankaJ

+0

しかし、このうちどれだけ日付を取得するには? – PriyankaJ

+1

どういう意味ですか?あなたはおそらく 'newDateString'を探しています。 – sch

0

このコードを試してください。

NSString *dateStr = @"Wed, 22 Jun 2011 12:36:00 +0100"; // change value base on your requirement. 

    // Convert string to date object 
    NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init]; 
    [dateFormat setDateFormat:@"EEE, d MMM yyyy HH:mm:ss ZZZ"]; // Change format base on dareStr. 
    NSDate *date = [dateFormat dateFromString:dateStr]; 

    // Convert date object to desired output format 
    [dateFormat setDateFormat:@"EEE, MMM d YYYY"]; // Change format base on your output requirement 
    dateStr = [dateFormat stringFromDate:date]; 
    NSLog(@"Date -- %@",dateStr); 
    [dateFormat release]; 
+0

これは、日付文字列から必要な日付を取得するためのものです。 –