2

だから私はxmlファイルを解析していて、解析した日付を画面に表示しています。日付は次のようになります:2012年5月31日木曜日20:43:54GMT。日付を次の形式に変換するにはどうすればよいですか:dd / mm / yy?私は時間を必要としません。


まあそれはクラッシュします。私は試した :

NSString *date = [[stories objectAtIndex: storyIndex] objectForKey: @"date"];

//changing dates format
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss Z"];
NSDate *myDate = [dateFormatter dateFromString:date];

NSString *dateText = [[NSString alloc] initWithString:[dateFormatter stringFromDate:myDate]];

何か案は?

4

3 に答える 3

5

使用できますNSDateFormatter

例えば:

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat: @"yyyy-MM-dd HH:mm:ss Z"];

    NSDate *myDate = [dateFormatter dateFromString:yourString];

日付形式のパターンについては、http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns参照してください。

于 2012-06-04T08:21:07.427 に答える
5

アイデアはNSDateFormatter、入力した時間文字列から日付を取得するために使用し、次に新しいdateformatterを使用して、日付から必要な新しい時間文字列を取得することです。

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"EEE, d MMM YYYY HH:mm:ss Z"];

NSDate *date = [dateFormatter dateFromString:theDateString];
[dateFormatter release];

NSDateFormatter *dateFormatter2 = [[NSDateFormatter alloc] init];
[dateFormatter2 setDateFormat:@"dd/mm/yyyy"];
NSString *newDateString = [dateFormatter2 stringFromDate:date];
[dateFormatter2 release];
于 2012-06-04T08:39:34.303 に答える
0

または、2番目の部分では、NSDateComponentsを使用できます。後:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"EEE, d MMM YYYY HH:mm:ss Z"];

NSDate *date = [dateFormatter dateFromString:theDateString];
[dateFormatter release];

//Get NSComponents from date object..

[NSString stringWithFormat:@"%@/%@/%@",dateComponent.date,dateComponent.month,dateComponent.year];
于 2014-09-24T07:56:06.890 に答える