【发布时间】:2015-12-15 13:19:55
【问题描述】:
我有一个核心数据,我有一个名为 time 的实体的属性 NSDate 类型,其中包含在商店中添加的时间。
当我尝试提取数据时,我需要按附加时间排序,并且我使用的是NSSortDescriptor。我的问题是当我有两个或多个相同时间的条目时:
time = "2015-12-15 12:48:08 +0000";
time = "2015-12-15 12:48:08 +0000";
time = "2015-12-15 12:48:09 +0000";
time = "2015-12-15 12:48:09 +0000";
这里的订单将丢失,因为我在NSDate 中没有毫秒数。
我该如何解决这个问题?
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"time"
ascending:YES];
[request setSortDescriptors:@[sortDescriptor]];
NSError *error;
NSArray *arr =[context executeFetchRequest:request error:&error];
编辑! 声明:
@property (nonatomic, retain) NSDate * time;
初始化:
newContact.time = [NSDate date];
第二种类型的初始化是:
NSDateFormatter *dateformatter = [[NSDateFormatter alloc] init];
[dateformatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[dateformatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSString *timeString = [dateformatter stringFromDate:[NSDate date]]
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone timeZoneWithName:@"GMT"]];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss.SSS"];
NSDate *sentTime = [dateFormatter dateFromString:timeString];
newContact.time = sentTime;
【问题讨论】:
-
您能告诉我们如何在
NSDate中添加年、月、日、小时、分钟和秒吗? -
假设原始输入具有该分辨率,
NSDate包含毫秒。time真的是NSDate还是NSString? -
我对您的问题进行了编辑
标签: ios objective-c nsdate nssortdescriptor