NSDate * now = [NSDate date];
我提前一小时得到这个日期。可能是因为它使用UTC。
如何获取系统当前日期?
Best Answer-推荐答案 strong>
[NSDate date] 返回当前日期。但是,NSDate 没有自己的时区,它只是一个绝对时间点。只有当您将日期显示为字符串或将其转换为日期组件(如日、月、小时等)时,时区才会发挥作用。
使用 NSDateFormatter 获取当前时区中日期的字符串表示形式,或在日期格式化程序上使用 setTimeZone: 指定不同的日期格式。如果您只是使用 NSLog ,日期将显示在 UTC 时区中(通过在日期对象上隐式调用 description )。
使用 NSCalendar 方法 components:fromDate: 从您的日期中提取单个组件(具有给定时区)以进行典型比较,例如“这两个日期是否在该时区的同一天?”。
关于iphone - 如何在 iPhone 上获取系统日期,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/8938811/
|