ios - 如何将任意时间转换为 NSDate 以使用 NSDateFormatter 对其进行格式化?

标签 ios objective-c xcode nsdate nsdateformatter

假设我有一个包含 15:00 PMNSString。我正在尝试使用 NSDateFormatter 将其格式化以显示

3:00 PM

但是,当我尝试打印出格式化字符串时,它是 null

NSString *string = @"15:00 PM";
NSDateFormatter *formatter = [ [NSDateFormatter alloc] init];
[formatter setDateFormat:@"hh:mm a"];
NSDate *time = [formatter dateFromString:string];

string = [formatter stringFromDate:time];

NSLog(@"%@", string);

应该如何分配字符串以正确格式化它?

最佳答案

使用下面的代码,

NSString *string = @"15:00";
NSDateFormatter *inputDateFormatter = [[NSDateFormatter alloc] init];
[inputDateFormatter setDateFormat:@"HH:mm"];

NSDate *date = [inputDateFormatter dateFromString:string];

NSDateFormatter *outputDateFormatter = [[NSDateFormatter alloc] init];
[outputDateFormatter setDateFormat:@"hh:mm a"];
NSString *outputString = [outputDateFormatter stringFromDate:date];

关于ios - 如何将任意时间转换为 NSDate 以使用 NSDateFormatter 对其进行格式化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27329911/

相关文章:

ios - 侧面菜单 俯 View

android - 为什么应用程序使用推送通知而不是 VPN(虚拟专用网络)?

ios - NSObject 类工作

ios - 获取预处理器宏的特定值

iphone - 委托(delegate)是执行此操作的首选方法吗?

iphone - 返回一个静态常量[]

ios - 延迟不到一秒,Swift 2

ios - Backendless - 如何从 'Data' 获取对象

ios - 如何在 modaly swift 4 中呈现 ViewController

c++ - macOS 塞拉利昂 : __textcoal__nt is deprecated