我正在使用NSDateFormatter在我的iPhone应用程序中设置日期,并且日期正确显示 . 但是,我发现所有语言环境(我的应用程序支持多达12种不同的语言)都坚持我通过setDateFormat指定的日期格式 . 理想情况下,我希望日期格式以自然的形式出现在用户的区域设置中,而不是遵循我的格式(适用于英语,但对于其他语言环境可能不太自然) .
以下是我的代码:
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
[dateFormatter setTimeStyle:NSDateFormatterShortStyle];
[dateFormatter setDateFormat:@"MMMM dd, yyyy kk:mm:ss"];
self.creationDate.text = [dateFormatter stringFromDate:creationTimeStamp];
3 回答
我会尝试以下
NSDateFormatter
API:像这样:
这应该会给你你正在寻找的输出,稍微整理一下代码,让你不必管理一些虚假的内存 .
找到了解决方案 . 关键是根本不要调用
setDateFormat
,iPhone中的API会根据setDateStyle
和setTimeStyle
中指定的内容自动选择要显示的内容 .@ fbrereto设计的独立解决方案:
现在你可以简单地运行: