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

nsdate from nsstring问题

  •  1
  • Slee  · 技术社区  · 15 年前

    获取nsstring,如下所示:

    NSString *lastSyncDate = [[items objectAtIndex:0] objectForKey:@"LastSyncDate"];
    

    该值为:2010年1月1日12:00:00 AM

    我正在使用以下内容转换为日期:

    NSDateFormatter *df = [[NSDateFormatter alloc] init];
    [df setTimeStyle:NSDateFormatterFullStyle];
    [df setDateFormat:@"MMMM d, y HH:mm:ss ZZZ"];
    NSDate *mySyncDate = [df dateFromString:lastSyncDate];
    

    这会给我一个空值吗?

    2 回复  |  直到 15 年前
        1
  •  4
  •   Seamus Campbell    15 年前

    您的日期格式与字符串的格式不匹配。

    尝试

    [df setDateFormat:@"M/d/y hh:mm:ss a"];
    

    [df setDateFormat:@"M/d/y h:mm:ss a"]; // if the hours aren't zero-padded
    

    格式字符串是在中描述的Unicode标准 http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns

        2
  •  0
  •   johnnieb    15 年前

    我同意西默斯·坎贝尔的观点。但是,请注意在格式化程序上设置时间样式( NSDateFormatter )对返回的结果没有影响 dateFromString .