OC-开发案例收集

iOS 关于部分不常见 时间格式转换

2021-01-09  本文已影响0人  小昊昊_iOS

今天在开发的时候遇到后台返回的这种时间格式 2020-12-31T07:19:53.000Z

T表示分隔符,Z表示的是UTC。

UTC:世界标准时间,在标准时间上加上8小时,即东八区时间,也就是北京时间。

我们想把时间时间转为本地时间(东八区时间)就需要加上8个小时

       NSString*  updatedAt =@“2020-12-31T07:19:53.000Z”;

        NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];

        //需要设置为和字符串相同的格式

        [dateFormattersetDateFormat:@"yyyy-MM-dd'T'HH:mm:ss.SSSZ"];

        NSDate*localDate = [dateFormatterdateFromString:updatedAt];

        //我们也可以规定一定使用某一个时区

        NSDateFormatter *formatter = [[NSDateFormatter alloc] init];

        [formattersetDateFormat:@"yyyy-MM-dd HH:mm:ss"];

        formatter.timeZone = [NSTimeZone timeZoneWithName:@"Asia/Shanghai"];//东八区时间

        //这样不管我们的手机是在哪里,打印出来的时间都是东八区的时间

    //    formatter.timeZone = [NSTimeZone timeZoneWithName:@"Asia/Tokyo"];//东九区时间

    //    formatter.timeZone = [NSTimeZone timeZoneWithName:@"GMT"];//零区时间

    //    formatter.timeZone = [NSTimeZone timeZoneWithName:@"UTC"];//零区时间,和GMT一样

        NSString*dateStr = [formatterstringFromDate:localDate];

.

随手记录,不喜勿喷。

上一篇 下一篇

猜你喜欢

热点阅读