4

私はこれらの2つを持っていますNSDate:

NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"MM/dd/yyyy"];
NSDate *rangeStart = [df dateFromString: @"03/03/2013"];
NSDate *rangeEnd = [df dateFromString: @"10/04/2013"];

そして、この述語:

request.predicate = [NSPredicate predicateWithFormat:@"createdDate >= %@ AND createdDate <= %@", rangeStart, rangeEnd];

しかし、述語の 2 番目の部分で明確に a が使用されて<=いても、前日 (つまり10/03/2013) までのオブジェクトが返されます。

私はまた、次のような述語を構築しようとしました:

NSPredicate *dateStartPredicate = [NSPredicate predicateWithFormat:@"createdDate >= %@", rangeStart];
NSPredicate *dateEndPredicate = [NSPredicate predicateWithFormat:@"createdDate <= %@", rangeEnd];
NSPredicate *finalPredicate = [NSCompoundPredicate andPredicateWithSubpredicates:[NSArray arrayWithObjects:dateStartPredicate, dateEndPredicate, nil]]; 

しかし、私は同じ結果を得ています。私は何か間違ったことをしていますか?これは実際に期待される動作ですか? もしそうなら、どうやっrangeEndて翌日に設定できますか?

ありがとう

4

2 に答える 2