我想将Date作为显示字符串转换为用户的时区,但我想使用24小时时间格式而不是12小时时间格式。
我知道我可以通过显式设置自定义dateFormat
字符串来做到这一点,但这会让系统生成符合用户区域设置的字符串。
NSNumberFormatter
具有可让您更改转化方面的设置,例如小数点分隔符。
是否有NSDateFormatter
的设置可让我在12到24小时格式之间切换而无需使用完全自定义格式?
答案 0 :(得分:1)
DateFormatter
有dateFormat(fromTemplate:options:locale:)
方法。使用此选项可根据用户的区域设置获得适当的24小时格式。
let fmt = DateFormatter.dateFormat(fromTemplate: "Hms", options: 0, locale: Locale.current)
虽然对于大多数语言环境来说这似乎都会返回HH:mm:ss
。 739个可用语言环境中只有85个返回HH:mm:ss
以外的其他内容。