我试图在包括 StackOverflow 在内的所有地方找到答案。我在从如下所示的字符串中添加时间事件时遇到问题:2014-12-31T19:00:00-06:00。顺便说一下,我正在从 XML 中解析它。其余代码(包括标签等)工作正常。
所以这是我在日历中添加新事件的代码(我尝试添加 'dateFromString' 作为名称,并带有当前要检查的时间并通过):
EKEventStore *store = [[EKEventStore alloc] init];
[store requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (!granted) { return; }
EKEvent *event = [EKEvent eventWithEventStore:store];
event.title = tempNameOfEvent;
event.startDate = dateFromString; //here is a NSDate but incorrectly formatted
event.endDate = [event.startDate dateByAddingTimeInterval:60*60]; //set 1 hour meeting
[event setCalendar:[store defaultCalendarForNewEvents]];
NSError *err = nil;
[store saveEvent:event span:EKSpanThisEvent commit:YES error:&err];
}];
那么,我应该如何格式化 NSDate 以使用 EKEventStore?我是否应该尝试将其添加为“yyyy-MMM-dd HH:mm:ss ZZZ”,看起来像“2007-01-09 17:00:00 +0000”?如何解析字符串并消除带有“-06:00”的部分?(鉴于 XML 的时间如下所示:2014-12-31T19:00:00-06:00)。