我有一个 UNIX 时间戳列表,我使用 DateFormatter 将其转换为日期。格式化后的数组是这样的:
2017-04-19 04:50
2017-04-19 07:50
2017年4月20日14:31
2017-04-20 16:55
2017年4月20日21:08
2017-04-21 01:25
2017-04-22 05:34
我想按照日期表的顺序执行此操作,而不显示同一天两次,例如:日 - 小时、小时、小时,而不是日 - 小时、日 - 小时、日 - 小时。我应该使用字典来做到这一点吗?您熟悉执行此操作的简单方法吗?谢谢!
最佳答案
我认为这是不可能的,因为日期格式会因此而受到干扰,然后您无法将其恢复为正确的日期格式。
但是如果你想要字典格式,你可以使用以下代码:
func getDatesToDictionary(dates: [Date]) -> [String: Any] {
let dateFormatterOne = DateFormatter()
dateFormatterOne.dateFormat = "MM-dd-YYYY HH:mm"
let dateFormatterTwo = DateFormatter()
dateFormatterTwo.dateFormat = "MM-dd-YYYY"
let fullDate = dateFormatterOne.string(from: dates[0])
let fullDateTemp = dateFormatterTwo.date(from: fullDate)
let finalDateString = dateFormatterTwo.string(from: fullDateTemp!)
var dateDictionary: [String: Any] = [:]
var dateArray: [Date] = []
let dateFormatterThree = DateFormatter()
dateFormatterThree.dateFormat = "HH:mm"
for eachDate in dates {
let fullDateHour = dateFormatterOne.string(from: eachDate)
let finalDateHourString = dateFormatterThree.date(from: fullDateHour)
dateArray.append(finalDateHourString!)
}
dateDictionary = [finalDateString: dateArray]
return dateDictionary
}
关于ios - 我应该使用什么技术来组织这个日期列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43490404/