ios 时间解析 差8个小时


啥问题也有:小程序中web开发工具里显示时间正常,ios上显示的查8小时

原因: 使用 NSDate *date = [NSDate date]; 获取的时间是标注的UTC时间,和北京时间相差8小时.将UTC时间转成当地的时间只需要设置  NSTimeZone *zone = [NSTimeZone systemTimeZone];

1.给NSDate设置时区

 

    NSDate *date = [NSDate date];

    NSTimeZone *zone = [NSTimeZone systemTimeZone];

    NSInteger interval = [zone secondsFromGMTForDate: date];

    NSDate *localeDate = [date  dateByAddingTimeInterval: interval];

2.给NSDateFormatter设置时区

 

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

    [formater setDateFormat:@"yyyyMMdd"];

    [formater setTimeZone:[NSTimeZone localTimeZone]];

    NSDate *date = [formater dateFromString:dateStr];


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM