NSDateFormatter的值如果你沒有傳入,它會使用什麼NSTimeZone值?我想要使用默認的timeZone
值,或者傳入給定的值。我想要做這樣的事情:如果你沒有傳入NSDateFormatter,NSTimeZone的值會是什麼?
- (NSString *) announcementTime{
NSTimeZone *defaultTimeZone; // What does this become?
[self announcementTimeInTimeZone:defaultTimeZone];
}
- (NSString *) announcementTimeInTimeZone:(NSTimeZone *)timeZone{
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateStyle:NSDateFormatterNoStyle];
[formatter setTimeStyle:NSDateFormatterShortStyle];
[formatter setTimeZone:timeZone];
return time;
}
什麼時區我想傳遞給我的announcementTimeInTimeZone:
方法?也許[NSTimeZone defaultTimeZone]
或[NSTimeZone localTimeZone]
。我只是不確定默認是什麼,也沒有看到它在任何地方記錄。
你有沒有嘗試localTimeZone,以確保它不一樣? – Moshe
是的,我將它添加到上面的答案中。他們是不同的。 –
這個答案在時區類型上有一些很好的解釋。 http://stackoverflow.com/questions/1526990/nstimezone-what-is-the-difference-between-localtimezone-and-systemtimezone –