我对MacO的开发非常陌生,因此如果这是一个简单的问题,我深表歉意:
我有一个可将数据存储并加载到SQlite数据库的应用程序。
视图在图形模式下具有NSDatePicker,并且该视图可以处于“添加”或“编辑”模式,即从SQlite添加或检索和更新数据
另一个视图具有NSTableView,其中一列是我要从SQlite加载到该列的日期。
我的问题是应该保留datePicker的什么属性-datePicker.stringValue或datepicker.dateValue?
如果它是.stringValue,是否可以在“编辑”视图上显示datePicker时简单地加载它?
如果是.dateValue,如何获取tableView的值? (使用NSDateFormatter吗?)
SQlite没有日期类型,因此我正在使用文本字段来存储日期
答案 0 :(得分:1)
将日期来回转换为字符串很麻烦,而且有些脆弱。我建议将其另存为浮点值。
要将日期转换为两次使用:
let interval = aDate.timeIntervalSinceReferenceDate
(其中aDate
是Date
对象,而interval
是Double,也称为TimeInterval
)
相反,要将浮点值转换回Date
:
let aDate = Date(timeIntervalSinceReferenceDate: interval)
您应该能够将生成的interval
浮点值保存到SQL数据库。对浮点值使用Double precision。