为啥 NSDate() 在 CoreData 中存储一个奇怪的值
Posted
技术标签:
【中文标题】为啥 NSDate() 在 CoreData 中存储一个奇怪的值【英文标题】:Why does NSDate() store a strange value in CoreData为什么 NSDate() 在 CoreData 中存储一个奇怪的值 【发布时间】:2014-10-25 01:20:22 【问题描述】:我现在使用 NSDate() 将日期存储到 CoreData:
sampleSwim.date = NSDate()
其中 sampleSwim 是一个由 xcdatamodeld 文件自动生成的类支持的 NSManagedObject。在该模型中,日期是 Date 类型。在 NSManagedObject 类中,它显示为 NSDate。
由于某种原因,我找回了这个值:
2014-10-297 05:07:57
我已经得到了相当多的样本。这是来自控制台。为什么会这样?
这就是我记录它(和阅读它)的方式:
var myWorkout: Swim = self.workouts[indexPath!.row] as Swim
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "YYYY-MM-DD hh:mm:ss"
let date = dateFormatter.stringFromDate(myWorkout.date as NSDate)
println(date)
谢谢
【问题讨论】:
【参考方案1】:你应该使用这种格式:
dateFormatter.dateFormat = "yyyy'-'MM'-'dd HH':'mm':'ss"
DD
是“一年中的一天”
hh
是 12 小时格式
YYYY
基于“一年中的一周”。
这是文档:Date Format Patterns
【讨论】:
谢谢,这是新的吗?我想我以前从未见过这种格式。 我不这么认为。这个苹果文档中使用了类似的:developer.apple.com/library/ios/documentation/Cocoa/Conceptual/…以上是关于为啥 NSDate() 在 CoreData 中存储一个奇怪的值的主要内容,如果未能解决你的问题,请参考以下文章
从 NSDate() 保存一个日期,在 CoreData 的末尾没有 +0000