首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSDateFormatter的日期格式问题

问NSDateFormatter的日期格式问题
EN

Stack Overflow用户
提问于 2015-12-22 17:49:21
回答 1查看 289关注 0票数 0

我有这样的代码:

代码语言:javascript
复制
var d = "22/12/1968 01:10:40"
var form : NSDateFormatter = NSDateFormatter()
form.dateFormat = "dd/MM/yyyy HH:mm:ss"
form.timeZone = NSTimeZone.localTimeZone() //Italy
print(form.dateFromString(d)!)

当我执行它时,我得到这样的结果:

代码语言:javascript
复制
1968-12-22 00:10:40 +0000

第一件事为什么我在结束时得到"+0000“?为什么数据格式不被尊重?

第二,时间不对。这就像是把时间设定在伦敦的时间上,而不是我把它设定在我当地的时区(意大利)。我在iPhone模拟器上测试了它

EN

回答 1

Stack Overflow用户

发布于 2015-12-22 18:27:33

  1. 为什么日期是错的?

var d= "22/12/1968 01:10:40“var格式: NSDateFormatter = NSDateFormatter() form.dateFormat = "dd/MM/yyyy HH:mm:ss”

//直到这里,没有“问题”

form.timeZone = NSTimeZone.localTimeZone() //意大利//意思是,意大利的日期时间是22/12/1968 01:10:40 (GMT +1)

//请记住,NSDate是绝对时间,或者它包含GMT+0时间。//和现在一样,在意大利,现在是22/12/1968 01:10:40,然后在GMT+0时间,它是1小时后。所以,testDate持有22/12/1968 00:10:40

NSDate testDate = form.dateFromString(d)!

  • Why它不打印相同的格式吗?因为您没有使用NSDateFormatter对象来获取日期字符串,而是使用NSDate()直接打印出对象的描述。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34412840

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档