NSDateFormatter *newformat = [NSDateFormatter new];
[newformat setDateFormat:@"yyyy/MM/dd HH:mm:ss"];
NSString *string = [newformat stringFromDate:[NSDate date]];
我正在获取所需格式的字符串,但不是我尝试跟随一个
的日期NSDate *newone = [secondformatter dateFromString:string];
答案 0 :(得分:0)
尝试,
NSDateFormatter * dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"MMM dd, YYYY"];
NSString * dateEndPrev = [dateFormat stringFromDate:[NSDate date]];
NSDateFormatter * dateFormat1 = [[NSDateFormatter alloc] init];
[dateFormat1 setDateFormat:@"MMM dd, YYYY a"];
NSDate *tmp = [dateFormat dateFromString:dateEndPrev];
NSString *strNew = [dateFormat1 stringFromDate:tmp];
NSDate *date = [dateFormat1 dateFromString:strNew];
它可能适合你。
答案 1 :(得分:0)
由于您要获得所需格式的字符串,这意味着格式化成功完成。您的代码应该没有任何问题。那么你在做什么来检查格式是否完成?打印日期对象以默认的UTC格式打印日期而不进行任何格式化。因此,通过打印来检查日期将无法正常工作。
这可以帮助你检查,或者说文件说,即直接打印格式化程序的输出,但我不打赌...
NSLog(@"%@", [secondformatter dateFromString:string]);
答案 2 :(得分:0)
NSDate没有格式。它有单一格式。格式化程序从日期对象中为您生成特定格式的字符串。日期也保持不变。
NSDateFormatter * dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"yyyy/MM/dd"];//here the output string will be in the fromat specified here
NSString * dateEndPrev = [dateFormat stringFromDate:[NSDate date]];
NSLog(@"%@",dateEndPrev);
答案 3 :(得分:0)
经过一些研究,我明白不可能像NSCalendarDate那样在NSDate中以“yyyy / MM / dd”这种格式保存日期。