On 5 Jan 2010, at 19:23, Chris Ridd wrote: > > 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?
By formatting the dates as YYYYMMDD and keeping them in strings you can use simple string comparison to sort, compare and filter. They are also very easy to format for display purposes. If you want to go standard then use the ISO 8601 date format. It's YYYY-MM-DD. See http://www.iso.org/iso/date_and_time_format
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ 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