NSDateFormatter不适合我吗?

时间:2013-02-28 03:47:15

标签: nsstring nsdate nsdateformatter

显然“2013-02-27T11:01:00.000”不是有效日期,因为每当我使用NSDateFormatter将该格式的日期编辑为AM / PM的时间时,我什么也得不到。

   NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
   [formatter setDateFormat:@"HH:mm:ss"];
   NSString *time = [formatter stringFromDate:DepartTimeDate];

这是否意味着我必须手动编辑日期,如果有的话,是否有人知道如何做到这一点?

示例:2013-02-27T11:01:00.000“11:01”就是我所需要的,无论如何将它与“日期”或字符串的其余部分分开?此外,它是24小时的时间,所以下午1点将是“2013-02-27T13:01:00.000”

如果有人有任何线索,我会非常感激!

1 个答案:

答案 0 :(得分:1)

使用一些技巧,我已经为你的问题提出了以下解决方案。

    NSString *departTimeDate = @"2013-02-27T11:01:00.000";

    NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'SSS"];
    NSDate *date = [dateFormatter dateFromString:departTimeDate];
    [dateFormatter setDateFormat:@"HH:mm"];    
    NSLog(@"Expected Result___ %@",[dateFormatter stringFromDate:date]);

另请查看Date Formatting Guide

希望这可以给你一个线索。