Core data 具有FetchedResultsController的标题标题部分的日期
我有一个属性Core data 具有FetchedResultsController的标题标题部分的日期,core-data,nsdateformatter,nsfetchedresultscontroller,nsdatecomponents,Core Data,Nsdateformatter,Nsfetchedresultscontroller,Nsdatecomponents,我有一个属性@NSManaged public var sectionKeyDate:Date?我正试图用于sectionKey。从NSFetchedResultsSectionInfo获取结果字符串以将其格式化为日期,然后将其转换回格式化字符串时遇到问题 override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
@NSManaged public var sectionKeyDate:Date?
我正试图用于sectionKey
。从NSFetchedResultsSectionInfo
获取结果字符串以将其格式化为日期,然后将其转换回格式化字符串时遇到问题
override func tableView(_ tableView: UITableView, titleForHeaderInSection section: Int) -> String? {
guard let sectionInfo = fetchedResultsController.sections?[section] else {
return nil
}
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-DD"
print("sectionInfo.name: ", sectionInfo.name)
print("Date: ", formatter.date(from: sectionInfo.name))
guard let date = formatter.date(from: sectionInfo.name) else { return "Error" }
let string = formatter.string(from: date)
return string
}
从字符串到日期的转换失败,返回nil
sectionInfo.name: 2021-03-25 05:00:00 +0000
Date: nil
(1) 我不知道该如何正确格式化。
(2) 我不完全确定对部分KeyPath
使用日期是否合适。问题在于获取正确的日期格式
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd HH:mm:ssZ"
let date = formatter.date(from: sectionInfo.name)