iOS 日期 12/24 小时格式 (Objective C)

iOS Date 12/24 hour formatting (Objective C)

我需要将 12 小时制时间格式转换为 24 小时制时间格式。特别是日期的 PM 部分,因为我与之通信的 API 只接受 24 小时格式。

示例:

02:00 PM需要转换为14:00.

08:30 PM需要转换为20:30.

我尝试了几种方法并且可能很接近,但我似乎不太正确。

为此您需要使用 NSDateFormatter 并将时间格式转换为 24 小时格式。

NSString *time12Hours = @"02:00 PM";
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"hh:mm a"];
NSDate *date = [formatter dateFromString:time12Hours];
[formatter setDateFormat:@"HH:mm"];
NSString *time24Hours = [formatter stringFromDate:date];

iPhone 格式字符串在 Unicode format 中。 link 后面是一个 table 解释上面所有字母的含义,因此您可以构建自己的。

您可以试试这个网站来找到您的格式字符串 nsdateformatter.com white NSDateFormatter