我想在swift中将UTC日期转换为本地日期但是在字符串中获取UTC To Local日期之后我再次将该字符串转换为NSDate但我总是以UTC日期格式获取,下面是我的代码
日期:UTC:2016-07-20 18:30:00 +0000
我在本地日期尝试此日期,请查看以下代码:
let dateInUTC = NSDate()
let seconds: Int = NSTimeZone.systemTimeZone().secondsFromGMT
print(seconds)
let localDateFormatter: NSDateFormatter = NSDateFormatter()
localDateFormatter.dateFormat = "MM/dd/yyyy HH:mm"
localDateFormatter.timeZone = NSTimeZone(forSecondsFromGMT: seconds)
let lastDate: String = localDateFormatter.stringFromDate(dateInUTC)
print(lastDate)
此时我正在“07/12/2016 16:56:36 GMT + 5:30”,意味着我在字符串中获得了本地日期,但我想在NSDate中使用此日期,所以我再次在NSDate中转换此字符串日期,请查看以下
let getDate:NSDate = localDateFormatter.dateFromString(lastDate)!
print(getDate)
但是在这个阶段我再次获得UTC的日期(2016-07-12 11:26:36 +0000),但我想在当地约会,
答案 0 :(得分:1)
NSDates不保存时区信息。在检索时,您总是必须使用带有时区的dateFormatter。