0

私は次のような日付を持っています:2012年6月4日月曜日14:13:00 GMTで、表示されている時刻を削除して、次のような日付にすることができます:2012年6月4日月曜日

私は以下のコードを試しました:

NSString *dateTex = [[stories objectAtIndex: storyIndex] objectForKey: @"date"];
NSLog(@"the object value is:%@",dateTex);    

//changing dates format
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"];    
NSDate *date = [dateFormatter dateFromString:dateTex];
[dateFormatter release];

NSDateFormatter *dateFormatter2 = [[NSDateFormatter alloc] init];
[dateFormatter2 setDateFormat:@"EEE, dd MMM yyyy"];
NSString *dateText = [dateFormatter2 stringFromDate:date];
[dateFormatter2 release];
NSLog(@"the object value is:%@",dateText);

日付はxmlファイルから解析され、に保存されますNSString dateTex。次に、形式を変更して新しい日付をに保存しようとしていますNSString dateText。ただし、dateText変数を出力しようとすると、。が表示されますthe object value is (null)。何か案は?

4

1 に答える 1

0

以下のコードを試すことができます:

NSString *dateTex = [[stories objectAtIndex: storyIndex] objectForKey: @"date"];
NSLog(@"the object value is:%@",dateTex);    

 //changing dates format
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy HH:mm:ss Z"]; 
NSDate *date = [dateFormatter dateFromString:dateTex];
[dateFormatter release];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterShortStyle];
[dateFormatter setDateFormat:@"EEE, dd MMM yyyy"];

NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:enUSPOSIXLocale];

NSString *my_date_string = [dateFormatter stringFromDate:date];
//my_date_string returns like value Tue 05 jun 2012

いらっしゃいませ!

于 2012-06-05T08:39:26.723 に答える