Ios NSDate对象未显示确切日期
我在使用Ios NSDate对象未显示确切日期,ios,nsdate,nsdateformatter,Ios,Nsdate,Nsdateformatter,我在使用NSDate对象时遇到了一个奇怪的问题,我想从位于两个日期之间的核心数据中获取记录。当日期不同时,这似乎没什么问题,但当我试图从相同的日期取回时,它什么也没有给我。我尝试使用上述代码设置两个日期的小时数: // This is for starting date NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar]; NSDateComponents *dateComps = [calendar componen
NSDate
对象时遇到了一个奇怪的问题,我想从位于两个日期之间的核心数据中获取记录。当日期不同时,这似乎没什么问题,但当我试图从相同的日期取回时,它什么也没有给我。我尝试使用上述代码设置两个日期的小时数:
// This is for starting date
NSCalendar *calendar = [NSCalendar autoupdatingCurrentCalendar];
NSDateComponents *dateComps = [calendar components:NSYearCalendarUnit|NSMonthCalendarUnit|NSDayCalendarUnit fromDate:date1];
[dateComps setHour:00];
[dateComps setMinute:00];
[dateComps setSecond:00];
NSDate *itemDate = [calendar dateFromComponents:dateComps];
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd hh:mm a"];
NSString *fdate=[formatter stringFromDate:itemDate];
在这里,fdate
以字符串的形式提供我想要的日期(2012-12-11 12:00 AM
)。但是当我试图用上面的代码将其转换为NSDate
NSDate *dt=[formatter dateFromString:fdate];
它完全破坏了我对上述输出的努力(
2012-12-1018:30:00+0000
)。请建议我该怎么做才能阻止这一切 这个问题在这里已经被回答了一千遍。请使用搜索。这已转换为GMT,我建议始终使用区域设置,以启用此计算机和时区。@AnoopVaidya如果有,请为我提供一些代码。NSDateFormatter*dateFormatter=[NSDateFormatter new];[dateFormatter setDateFormat:@“EEE,dd-MMM-yyy-HH:mm:ss-z”];[dateFormatter setLocale:[NSLocale alloc]initWithLocaleIdentifier:@“EN”];NSDate*myDate=[dateFormatter dateFromString:@“Fri,2012年12月7日08:40:33+0100”];NSLog(@-->%@),myDate;NSString*rechange=[dateFormatter stringFromDate:myDate];NSLog(@“=>%@”,重新更改)@Anopvaidya仍然有相同的结果。