将DateTime字符串24小时格式从SQL转换为12小时与Am / PM

时间:2015-09-02 10:47:53

标签: ios sql objective-c

我正在尝试解决一个问题很长一段时间....我在目标C中使用了几乎所有格式但没有得到正确的结果。

我有来自SQL服务器的字符串以及其他数据:

  

2015年8月31日14:40:11

我想将其转换如下:

  

2015年8月31日下午2:40

我的问题是:

  • 我是否必须更改从sql发送的DateTime字段的方式?

  • 我如何在Objective C中实现?

2 个答案:

答案 0 :(得分:1)

试试这个

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4];
[dateFormatter setDateFormat:@"dd-MMM-YYYY hh:mm:ss"];
NSDate *date = [dateFormatter dateFromString:@"Aug 31 2015 14:40:11"];
[dateFormatter setDateFormat:@"MM/dd/yyyy HH:mm a"];
NSLog(@"Your converted date - %@",[dateFormatter stringFromDate:date]);

答案 1 :(得分:0)

最好从SQL获取所需格式的日期,因为SQL Server支持several date formats来表示日期。另一方面,如果您想在iOS中管理,则需要NSDateFormatterNSDateComponent个类。

以下是example,请参阅 loretoparisi的解决方案。