On 4 Jan 2010, at 13:50, Quincey Morris wrote: > On Jan 4, 2010, at 02:26, Brian Bruinewoud wrote: > >> What's the best way to get an NSDate object for 'today' such that the time >> is 00:00:00 (or any other constant). >> I not interested in the time, I only care about the year-month-day, but I do >> need the the hours-minutes-seconds to be the same on all dates so that I can >> compare the dates. >> >> Currently I do this: >> >> NSDateFormatter *dateFmter = [[NSDateFormatter alloc] init]; >> [dateFmter setTimeStyle:NSDateFormatterNoStyle]; >> [dateFmter setDateStyle:NSDateFormatterMediumStyle]; >> >> NSString dateText = [ dateFmter stringFromDate: self.now ]; // !! !! I >> need dateText anyway >> >> self.now = [ dateFmter dateFromString: dateText ]; // !! truncate time to >> 00:00:00 >> >> But this seems ugly, cumbersome and inefficient. >> >> The other option might be to use NSDate, NSCalendar and NSDateComponents, >> but that seems to be even more ugly and cumbersome and probably more >> inefficient. > > NSDate is *not* a good choice for these sorts of comparisons, because it's > always a date and a time, and it's not as simple as it seems. Consider this > (unlikely) example:
However Core Data models "dates" using NSDate. If you needed to model dates without times in Core Data (and be able to sort/filter on them) what would you do? Cheers, Chris _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com