iOS 24 小时格式的时间
iOS time in 24 hours format
我想获取当前时间并将其解析为 24 hours
格式的 String
,例如 13:30
.
这是我的代码:
NSDate *date = [NSDate date];
NSDateFormatter *formatter = [NSDateFormatter new];
[formatter setDateFormat:@"HH:mm"];
NSString *timeString = [formatter stringFromDate:date];
它适用于 iOS simulator
,但在我的 iPad
上我得到 3:30 PM
。
我试过不同的 formats
但结果还是一样。
知道为什么吗?
提前致谢。
问题是用户的本地设置为 12 小时格式。将本地设置为 en_US_POSIX
以覆盖用户的设置。
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
您需要将语言环境明确设置为 24 小时制。
有关如何为 NSDateFormatter
设置语言环境的详细信息,请参阅 NSDateFormatter Locale。
注意@mtb 对该问题的回答。它解释了如何不使用语言环境。
我想获取当前时间并将其解析为 24 hours
格式的 String
,例如 13:30
.
这是我的代码:
NSDate *date = [NSDate date];
NSDateFormatter *formatter = [NSDateFormatter new];
[formatter setDateFormat:@"HH:mm"];
NSString *timeString = [formatter stringFromDate:date];
它适用于 iOS simulator
,但在我的 iPad
上我得到 3:30 PM
。
我试过不同的 formats
但结果还是一样。
知道为什么吗?
提前致谢。
问题是用户的本地设置为 12 小时格式。将本地设置为 en_US_POSIX
以覆盖用户的设置。
dateFormatter.locale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US_POSIX"];
您需要将语言环境明确设置为 24 小时制。
有关如何为 NSDateFormatter
设置语言环境的详细信息,请参阅 NSDateFormatter Locale。
注意@mtb 对该问题的回答。它解释了如何不使用语言环境。