【问题标题】:how to show time 08:00:00 to 8 am using swift如何使用 swift 显示时间 08:00:00 到上午 8 点
【发布时间】:2016-03-31 05:05:14
【问题描述】:

我收到的字符串时间为 08:00:00,我需要将其显示为上午 8 点。 我不知道该怎么做,所以请帮助我。

我不知道如何使用 NSDate。

【问题讨论】:

    标签: ios objective-c swift swift2


    【解决方案1】:

    喜欢

    Objective-C

    NSString *sample = @"08:00:00";
    NSDateFormatter *dateFormatter =[[NSDateFormatter alloc] init];
    [dateFormatter setDateFormat:@"HH:mm:ss"];  // or use hh:mm:ss
    NSDate *date1 = [dateFormatter dateFromString:sample];
     [dateFormatter setDateFormat:@"HH a"];  // or use hh
     NSString *finaldate = [dateFormatter stringFromDate:date1];
      NSLog(@"%@",finaldate);
    

    斯威夫特

    var sample: String = "08:00:00"
    var dateFormatter: NSDateFormatter = NSDateFormatter()
    dateFormatter.dateFormat = "HH:mm:ss"  // or use hh:mm:ss
    var date1: NSDate = dateFormatter.dateFromString(sample)
    dateFormatter.dateFormat = "HH a"  // or use hh
    var finaldate: String = dateFormatter.stringFromDate(date1)
    NSLog("%@", finaldate)
    

    时间格式

    // 24 hours fomat
    HH  -- 13, 14, etc 
    // 12 hours format
     hh  -- 01, 02, etc
    

    【讨论】:

    • 很棒的工作 print("formattedDate (finaldate)")
    • 但是如果时间是 let sample: String = "08:45:00" 那么它仍然显示 08 am 但在这种情况下你不认为它应该是 08:45 am 吗?
    • 我知道了 dateFormatter.dateFormat = "HH:mm a" 我有点赶时间,非常感谢
    • 但是让 sample: String = "18:00:00" 它显示 18:00 pm ,你不认为应该是 6:00 pm
    • 你能告诉我为什么它显示的是 18:00 pm 而不是 6 pm
    猜你喜欢
    • 1970-01-01
    • 2014-01-02
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    • 2012-01-26
    • 1970-01-01
    • 2014-12-29
    • 1970-01-01
    相关资源
    最近更新 更多