我是iOS和CoreData的新手,所以如果这太基础我很抱歉。
我正在试图弄清楚为什么private def minMaxValue (valuesList: List[Option[Any]], min: Boolean): Option[Int] =
valuesList.flatten match {
case Nil => None
case xs: List[Int] => Some(if (min) xs.min else xs.max)
case xs: List[Long] => Some(if (min) xs.min else xs.max)
}
的有效但奇怪的日期正在转变为0000-01-01T00:00:00Z
。例如:
nil
我认为这个日期应该有效。它符合RFC和ISO规范。
calculatedAttrMapping.valueTransformer(@"0000-01-01T00:00:00Z"); // nil
(不是说JS是相关的,而是作为肠道检查......)
我尝试在调试器中插入它,但在看到任何有用的东西之前它会进入汇编。
这是来自new Date("0000-01-01T00:00:00Z"); //Sat Jan 01 0 07:00:00 GMT+0700 (ICT)
GUI中的配置吗?
这是故意的行为吗?限制?
答案 0 :(得分:0)
let dateStringFormatter = NSDateFormatter()
dateStringFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
var d = dateStringFormatter.dateFromString("0001-01-01T00:00:00Z")
返回Some "Jan 1, 1, 6:42 AM"
let dateStringFormatter = NSDateFormatter()
dateStringFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"
var d = dateStringFormatter.dateFromString("0000-01-01T00:00:00Z")
返回nil
这表明对于使用NSDateFormatter的Swift,它无法解析0000
年。
如果我要说这适用于CoreData案例,那么这里有两个很大的假设。