我正在使用ical4j创建我的.ical文件和保存事件。但是如何在日历中找到存储的VEvent呢?
我有下面的代码,但它不起作用?我得到了我的日历->,这是工作的,我已经调试过了
public VEvent findEvent(CalendarExtern calendarExtern, String hashId) throws IOException, ParserException {
Calendar calendar = readCalenderFromFile(calendarExtern);
for (Component component : calendar.getComponents(Component.VEVENT)) {
if (hashId.equals(component.getProperty(Property.UID))) {
VEvent event = (VEvent) component;
return event;
}
}
return null;
}有什么想法吗?非常感谢
发布于 2018-09-11 06:13:50
component.getProperty(Property.UID)返回一个属性,所以您真正想要做的是:
if (hashId.equals(component.getProperty(Property.UID).getValue()))...当然,根据输入的不同,在执行getValue()之前,您可能需要检查没有UID属性的组件。
发布于 2018-09-11 14:16:11
使用ComponentGroup查找事件的最新版本的替代方法:
ComponentGroup<VEvent> group = new ComponentGroup(
calendar.getComponents(Component.VEVENT),
new Uid(hashId));
return group.getLatestRevision();https://stackoverflow.com/questions/52257196
复制相似问题