我使用的XCode 4 & IOS 4.3Coredata NSPredicate按日期
LastWorn處於coredata模型中的日期屬性。 在目標C類中,LastWorn是NSDate。 使用objective-c我可以設置並從coredata數據庫中獲取日期。 btnSearchOperator包含>或< datePicker.date是一個的UIDatePicker
我想用一個謂語LastWorn日期搜索coredata數據庫的當前選擇的值。從代碼 提取構建NSPredicate查詢數據
... code not shown ...
if ([txtSearchDate.text length] > 0)
{
if ([predicate length] != 0) {
[predicate appendString:@" AND "];
}
[predicate appendFormat:@"LastWorn %@ %@", [btnSearchOperator currentTitle], datePickerView.date];
}
上面的代碼追加「LastWorn> 2011-04-20 14:00:00 0000」謂詞和崩潰。
控制檯日誌 2011-04-23 22:34:17.805 iDresser [1216:207] *終止應用程序由於未捕獲的異常 'NSInvalidArgumentException',原因:「無法分析格式字符串「Type.Id = = 0和購物== NO AND(LastWorn> 2011-04-20 14:00:00 +0000)「」
如果我用的是F-腳本CoreData瀏覽器工具,並建立一個測試查詢「LastWorn!=零「顯示正確的結果。
如果查詢「LastWorn> 2011-01」,它顯示與LastWorn!= nil相同並且不正確。
如果我查詢「LastWorn> 2011」我得到「NSInvalidArgumentException: - [NSCFNumber timeIntervalSinceReferenceDate]:無法識別的選擇發送到實例0x20048a920」
我只是想找到一個LastWorn日期的所有項目低於指定值? 任何建議,將不勝感激。
那固定的失敗。 Thankyou花時間回答我的問題。 – user722361 2011-05-10 20:46:59