【问题标题】:remove year for date format in respect to the users locale根据用户区域设置删除日期格式的年份
【发布时间】:2012-05-18 14:37:15
【问题描述】:

我想根据用户设备的区域设置显示日期和月份。

因此,今天的日期将显示为 5/18(美国设置)和 18.5.(德国设置)。
由于我想处理所有可能的语言环境,我不能简单地使用 [dateFormatter setDateFormat:][dateFormatter setDateStyle:NSDateFormatterShortStyle] 来显示年份。

除了尝试识别字符串中的年份值并将其删除之外,还有更优雅的方法吗?

【问题讨论】:

    标签: ios objective-c cocoa-touch localization nsdateformatter


    【解决方案1】:

    我自己找到了答案:

    [self.dateFormatter setDateFormat:[NSDateFormatter dateFormatFromTemplate:@"MM d"
                                                                      options:0 
                                                                       locale:[NSLocale currentLocale]]];
    

    dateFormatFromTemplate上的苹果文档中查看更多信息

    【讨论】:

    • 太棒了!当我第一次看到你的答案时,我不确定它是否能完成工作,不要认为方法名称很不言自明。但它确实有效,函数是这样描述的:“一个本地化的日期格式字符串,表示模板中给定的日期格式组件,根据语言环境指定的语言环境适当地安排。”
    猜你喜欢
    • 2021-12-12
    • 1970-01-01
    • 2015-09-16
    • 2012-06-27
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-22
    相关资源
    最近更新 更多