问题
I am getting this error .How to solve it.Please suggest me. Crash Report [__NSCFCalendar components:fromDate:toDate:options:]: fromDate cannot be nil I mean really, what do you think that operation is supposed to mean with a nil fromDate? An exception has been avoided for now. A few of these errors are going to be reported with this complaint, then further violations will simply silently do whatever random thing results from the nil. Here is the backtrace where this occurred this time (some frames may be missing due to compiler optimizations): My code
NSString *str_babyedays=aMileBusiness.str_DAte;
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"dd-MM-yyyy"];
df.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"EN"];
NSDate *titemdate = [df dateFromString: str_babyedays];
NSDate *currentDate = [NSDate date];
NSCalendar *gregorian = [[NSCalendar alloc]
initWithCalendarIdentifier:NSGregorianCalendar];
NSUInteger unitFlags = NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *components = [gregorian components:unitFlags
fromDate:titemdate
toDate:currentDate options:0];
NSInteger months = [components month];
NSInteger day= [components day];
回答1:
Your titemdate
is nil because your NSDateFormatter
was unable to parse a date from str_babyedays
. Straight from the Apple documentation for NSDateFormatter
:
If
dateFromString:
can not parse the string, returnsnil
.
You can look at any of these questions to determine why it's nil
.
NSDateFormatter dateFromString conversion
NSDateFormatter dateFromString Always Returns nil
dateFromString always returns null with dateformatter
来源:https://stackoverflow.com/questions/26760014/nscfcalendar-componentsfromdatetodateoptions-fromdate-cannot-be-nil