相信很多人都会遇到这个问题,将往服务器传时间的时候需要转换类型。就会用到timeIntervalSince1970这个函数,但是会发现用这个转换后在转成NSDate数据时会少了8个小时。timeIntervalSince1970确定的时区是GTM时区,会产生一个时区差。采用这个方法就可以消除时区差,获得本地时间。
NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
NSInteger delta = [timeZone secondsFromGMT];
将用timeIntervalSince1970计算出来的时间加上delta,就可以获得本地的具体时间了。