【问题标题】:Convert NSDate from NSString issue从 NSString 问题转换 NSDate
【发布时间】:2013-10-28 11:14:33
【问题描述】:

我的日期转换存在问题,我没有成功找到解决方案。这会让我发疯。 所以我从一个字符串类型的 REST Web 服务中检索一个日期,当我尝试将日期转换为 NSDate 时,我失去了一年。

代码如下:

- (NSDate *)convertISOToDate:(NSString *) dateString {
    NSDateFormatter * formatter = [[NSDateFormatter alloc] init];
    [formatter setCalendar:[NSCalendar currentCalendar]];
    [formatter setDateFormat:@"YYYY-MM-dd'T'HH:mm:ssZZZ"];
    [formatter setLocale:[NSLocale currentLocale]];
    NSDate  *date = [formatter dateFromString:dateString];
    return date;
}

当我调试时,我在输入中有这个:dateString __NSCFString * @"2017-12-30T11:51:46+0100"

在日期对象上:日期 __NSDate * 2016-12-30 11:51:46 CET 0x1dd3e950

有人对这个问题有想法吗?

【问题讨论】:

    标签: ios objective-c nsstring nsdate


    【解决方案1】:

    使用"yyyy" 代替"YYYY""YYYY" 是基于每周的年份。

    [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZ"];
    

    【讨论】:

      【解决方案2】:

      试试这个:

      [formatter setDateFormat:@"yyyy-MM-dd'T'HH:mm:ssZZZZ];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-08-10
        • 1970-01-01
        • 1970-01-01
        • 2011-11-25
        • 2011-11-01
        • 1970-01-01
        相关资源
        最近更新 更多