Я могу получить NSString, представляющую текущую дату и время в PST, используя следующий код.
//get current date and time
NSTimeZone *timeZone = [[NSTimeZone alloc] initWithName:@"America/Los_Angeles"];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"MM/dd/yy HH:mm:ss zzz"];
[dateFormatter setTimeZone:timeZone];
NSLocale *enUSPOSIXLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
[dateFormatter setLocale:enUSPOSIXLocale];
[enUSPOSIXLocale release];
NSDate *date = [NSDate date];
NSString *currentDateStr = [dateFormatter stringFromDate:date];
NSLog(@"currentDateStr %@",currentDateStr);
[dateFormatter release];
РЕДАКТИРОВАТЬ:
Но следующий код для получения NSDate из NSString не служит моей цели.
//get date from string
NSDateFormatter* formatter2 = [[NSDateFormatter alloc] init];
[formatter2 setDateFormat:@"MM/dd/yy HH:mm:ss"];
NSDate *dt = [[NSDate alloc]init];
dt = [formatter2 dateFromString:currentDateStr];
NSLog(@"dt %@",dt);
"dt", по-видимому, является нулевым.
Может кто-нибудь помочь мне в решении этой проблемы получения NSDate от NSString.Спасибо заранее.