我的日期是这样的:周一,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)
。
有什么想法吗?
答案 0 :(得分: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
欢迎!