代码之家  ›  专栏  ›  技术社区  ›  izk

RFC 3339无毫秒日期字符串的NSDateFormatter格式字符串

  •  0
  • izk  · 技术社区  · 12 年前

    我在试图解析来自提要的Atom RFC 3339数据时遇到了问题。它的形式是: @"2014-07-21T11:36:05-05:00" 以下格式无法解析它…有什么帮助吗?

            [dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ssZZZ"]; 
    
            [dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss.SSSZZZ"]; 
    
            [dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss"]; 
    
            [dateFormatter setDateFormat:@"yyyy'-'MM'-'dd'T'HH':'mm':'ss.ZZZZ"];
    
    1 回复  |  直到 12 年前
        1
  •  6
  •   jscs    12 年前

    您需要的格式是

    yyyy-MM-dd'T'HH:mm:ssZZZZZ
    

    五个人 Z pattern是格式化库中最近添加的一个新功能,它正好处理这种时区格式。

    (尽管 Apple's Technical Q&A 1480 on this topic (以及日期格式指南中的相同代码),格式字符串中唯一一项 需要 用撇号转义是 T -- Unicode Technical Standard #35 控制格式字符串的表示只保留ASCII字母a-z和a-z。然而,它也表示标点符号 也许 在未来被使用,所以你 可以 如果愿意,请引用冒号和连字符。)

    推荐文章