NSDateFormatter使用哪个版本的UTS-35?

时间:2018-03-11 19:07:40

标签: ios date nsdateformatter

我想使用NSDateFormatter上的dateFormat参数来使用字符串模板格式化日期,例如yyyy-MM-dd。我意识到这来自UTS-35,但我不确定我的操作系统使用的是哪个标准版本。

过去有一个页面可以准确指定每个版本的iOS支持的Unicode Technical Standard #35版本。我无法再在Apple的文档中找到该页面。

最新的几个iOS版本使用哪个版本的UTS-35?

1 个答案:

答案 0 :(得分:2)

Date Formatting Guide有我正在寻找的页面:

  

固定格式

     

要为日期格式化程序指定自定义固定格式,请使用setDateFormat:。格式字符串使用Unicode技术标准#35中的格式模式。该标准的版本因操作系统的发布而异:

     

因此,您最有可能为任何最新的iOS版本寻找version tr35-31

但是,正如dateFormat documentation所述,如果您向用户显示日期,最好完全避开dateFormat参数并使用dateStyle和{{1其中考虑了用户的语言环境/偏好。

  

在使用固定格式表示时,您应该只设置此属性,如Working With Fixed Format Date Representations中所述。对于用户可见的表示形式,如果使用预定义的样式无法实现所需的格式,则应使用dateStyletimeStyle属性或setLocalizedDateFormatFromTemplate:方法;这两个属性和此方法都提供了适合显示给用户的本地化日期表示。