2014-10-14 2 views
0

Я пытаюсь реализовать простую функцию экспорта в файл ics. События экспортируются отлично, но есть проблема со временем - они отсутствуют в экспортированном файле, но существуют в исходном формате. Вот код:Установить время события с iCal4j

TimeZone timeZone = TimeZone.getTimeZone (e.getOrder(). GetTimeZone()); longtimeZoneOffset = TimeUnit.MILLISECONDS.toMinutes (timeZone.getOffset (now.getTime()));

startDate = new net.fortuna.ical4j.model.Date(DateUtils.addMinutes(e.getStartDateTime(), (int) timeZoneOffset).getTime()); 
endDate = new net.fortuna.ical4j.model.Date(DateUtils.addMinutes(e.getEndDateTime(), (int) timeZoneOffset).getTime()); 
event = new VEvent(startDate, endDate, e.getOrder().getDescription()); 
event.getProperties().add(TimeZoneRegistryFactory.getInstance().createRegistry().getTimeZone(e.getOrder().getTimeZone()).getVTimeZone().getTimeZoneId()); 
event.getProperties().add(new UidGenerator("CA").generateUid()); 
calendar.getComponents().add(event); 

Что я пропустил? Заранее спасибо!

ответ

2

Я не смог воспроизвести код, так как вы не вставляли свой код полностью и правильно (возможно, вы могли бы сделать это и включить импорт? Это упростит ответ на ваш вопрос).

Но, тем не менее, вы уже просмотрели библиотеку раз в две недели (см.: http://sourceforge.net/projects/biweekly/)? Для меня это выглядит довольно просто: легко понять, и вам не нужно возиться с классами iCal4j Date/TimeZone и т. Д., Которые казались довольно громоздкими при первом взгляде.

Вот несколько примеров кода дает вам представление о том, что это довольно интуитивное использование:

ICalendar icals = new ICalendar(); 
VEvent event = new VEvent(); 
event.setDateStart(new Date()); 
event.setDateEnd(new Date()); 
event.setDescription("some description"); 

icals.setProductId("some product ID"); 
icals.addEvent(event); 

WriterChainText text = Biweekly.write(icals); 
System.out.println(text.go()); 

Он может быть легко включены с помощью Maven с помощью:

<dependency> 
    <groupId>net.sf.biweekly</groupId> 
    <artifactId>biweekly</artifactId> 
    <version>0.3.3</version> 
</dependency> 

Надежда, что помогает?