此代码。

NSDate *today = [NSDate date];
NSArray *langs = [NSLocale preferredLanguages];
NSString *langID = [langs objectAtIndex:0];
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:langID];
*format = [[NSDateFormatter alloc] init];
[format setLocale:locale];
[format setDateFormat:@"yyyy/MM/dd HH:mm:ss"];
strTime = [[NSString alloc] initWithFormat:@"%@",[format stringFromDate:today]];

today is +0000.
langID is en.
but,strTime is Japan time.

为什么?
我想根据语言设置显示日期和时间。

最佳答案

代替

NSArray *langs = [NSLocale preferredLanguages];
NSString *langID = [langs objectAtIndex:0];
NSLocale *locale = [[NSLocale alloc] initWithLocaleIdentifier:langID];

尝试这个,
NSLocale *locale = [NSLocale currentLocale];

那应该有帮助。

关于iphone - NSDate关于日期和时间显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13786772/

10-13 03:48