我想借助DateFormatter将当前日期转换为日期数据类型。我希望日期为dd/mm/yyyy格式,其数据类型应该是Date不是字符串。 这是我尝试过的代码和输出。如何将系统日期转换为日期格式转换为日期数据类型
let date = Date()
print(date)//output - 2017-02-24 13:39:01 +0000
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "dd/MM/yyyy"
let tempDate = dateFormatter.string(from: date)
print(tempDate)//output - 24/02/2017
let currentDate = dateFormatter.date(from: tempDate)
print(currentDate!)//output - 2017-02-23 18:30:00 +0000
您没有指定小时/分钟/秒,所以一旦将其从字符串转换回日期,它就会为0(一天的开始)。但是因为我猜想,你在印度的UTC时间为+5:30时区,18:30:00 + 0000是你一天的开始,相当于00:00:00 +5:30。如果你将它转换回String后,你应该有“24/02/2017” – Larme
我不想要小时/分钟/秒这就是为什么我指定了“dd/MM/yyyy” – Ronit
更改dateFormatter时区 dateFormatter。 timeZone = TimeZone(secondsFromGMT:##) –