黑马程序员技术交流社区

标题: 关于NSDate的问题 [打印本页]

作者: Freedam    时间: 2014-6-10 12:10
标题: 关于NSDate的问题
本帖最后由 Freedam 于 2014-6-11 10:41 编辑

直接上代码:
  1. #import <Foundation/Foundation.h>

  2. int main(int argc, const char * argv[])
  3. {
  4.     NSString *str = @"2014/05/08 10:20:32";
  5.    
  6.     NSDateFormatter *f = [[NSDateFormatter alloc] init];
  7.     f.dateFormat = @"yyyy/MM/dd HH:mm:ss";
  8.    
  9.     NSDate *d = [f dateFromString:str];
  10.     NSLog(@"%@",d);
  11.     return 0;
  12. }
复制代码

运行结果:
  1. 2014-06-10 12:02:50.974 08-NSDate[767:303] 2011-09-10 10:56:00 +0000
  2. Program ended with exit code: 0
复制代码


我定义的时间字符串是2014/05/08 10:20:32;为什么我格式成时间变成了2011-09-10 10:56:00了。请大家帮忙解答疑惑?
作者: 无尽可能    时间: 2014-6-10 19:30
已经测试过你代码运行结果如下
  1. 2014-06-10 19:29:07.825 01-test[316:303] 2014-05-08 02:20:32 +0000
  2. Program ended with exit code: 0
复制代码

作者: Freedam    时间: 2014-6-10 22:23
一时打错了 我想问为什么和我定义的时间有偏差
作者: 无尽可能    时间: 2014-6-10 22:34
Freedam 发表于 2014-6-10 22:23
一时打错了 我想问为什么和我定义的时间有偏差

NSDate表示时间为0时区的时间,所以比我们的时间早8个小时。
作者: Freedam    时间: 2014-6-11 10:41
和1970年的时间搞混了 谢谢 现在明白了




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2