iphone - 如何确定语言环境的日期格式是月/日还是日/月?

标签 iphone ios internationalization nsdate nsdateformatter

在我的 iPhone 应用程序中,我希望能够确定用户区域设置的日期格式是月/日(即 1/5 表示一月五日)还是日/月(即 5/1 表示一月五日)。我有一个自定义的 NSDateFormatter,它不使用一种基本格式,例如 NSDateFormatterShortStyle (11/23/37)。

在理想情况下,我想使用 NSDateFormatterShortStyle,但不显示年份(仅显示月份和日期#)。实现此目标的最佳方法是什么?

最佳答案

你想使用 NSDateFormatter 的 +dateFormatFromTemplate:options:locale:

这是一些 Apple 示例代码:

NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
NSLocale *gbLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_GB"];

NSString *dateFormat;
NSString *dateComponents = @"yMMMMd";

dateFormat = [NSDateFormatter dateFormatFromTemplate:dateComponents options:0 locale:usLocale];
NSLog(@"Date format for %@: %@",
    [usLocale displayNameForKey:NSLocaleIdentifier value:[usLocale localeIdentifier]], dateFormat);

dateFormat = [NSDateFormatter dateFormatFromTemplate:dateComponents options:0 locale:gbLocale];
NSLog(@"Date format for %@: %@",
    [gbLocale displayNameForKey:NSLocaleIdentifier value:[gbLocale localeIdentifier]], dateFormat);

// Output:
// Date format for English (United States): MMMM d, y
// Date format for English (United Kingdom): d MMMM y

关于iphone - 如何确定语言环境的日期格式是月/日还是日/月?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5135482/

相关文章:

iphone - 如何使用键值编码在 ABPerson 中设置属性值

ios - 选择时如何更改位于 tableVIewCell 上的 UIButton 的图像。在 swift 3

iphone - 如何从 iphone 的图库中设置 Uibutton 中的背景

iphone - 在 AVFoundation 中捕获缩放的预览 View

iphone - 单击按钮时应出现日期选择器

iphone - 如何从 UIAlertView 获取输入?

ios - iOS中的GCDWeb服务器崩溃问题

Python xgettext 合并gettext 和ngettext 字符串,打破翻译查找

java - 基于插件的程序中的语言环境和 ResourceBundle

python - 我无法在 Pyramid 中进行翻译