Rick:

The following code, which is likely what you are doing, will return the time in 
1970 (NSDate's reference date) because you have not specified a date:

NSString *timeString = @"14:50 PDT";
NSDateFormatter *df = [[NSDateFormatter alloc ] init];
[df setDateFormat:@"HH':'mm zzz"];
NSDate *date = [df dateFromString:timeString];
[df release];


Instead, you need to use date components to set the day as well as the time, 
per the following:

NSString *timeString = @"14:50 PDT";
NSDateFormatter *df = [[NSDateFormatter alloc ] init];
[df setDateFormat:@"HH':'mm zzz"];
NSDate *date = [df dateFromString:timeString];

NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *dateComponents = [calendar components:( NSYearCalendarUnit | 
NSMonthCalendarUnit |  NSDayCalendarUnit ) fromDate:[NSDate date]];
NSDateComponents *timeComponents = [calendar components:( NSHourCalendarUnit | 
NSMinuteCalendarUnit | NSSecondCalendarUnit ) fromDate: date ];
    
[dateComponents setHour:[timeComponents hour]];
[dateComponents setMinute:[timeComponents minute]];
[dateComponents setSecond:[timeComponents second]];

NSDate *timeToday = [calendar dateFromComponents:dateComponents];
[df release];

Change 'fromDate' in NSDateComponents *dateComponents to whatever date you want 
in order to create your time on a different day.

Best Wishes.

Roger Dalal




On Oct 12, 2011, at 9:30 PM, Rick Mann wrote:

> I have a situation where I have to parse times like "14:50 PDT". If I just 
> set up an NSDateFormatter with dateFormat = @"HH:mm z", I end up with a time 
> of day in 1970.
> 
> What's the best way to get it to give me that time of day today?
> 
> Thanks,
> Rick
> 
> _______________________________________________
> 
> 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/roger.dalal%40gmail.com
> 
> This email sent to roger.da...@gmail.com

_______________________________________________

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

Reply via email to