gpt4 book ai didi

java - 使用 iCal4j 设置 Activity 时间

转载 作者:行者123 更新时间:2023-12-02 05:22:47 29 4
gpt4 key购买 nike

我试图将简单的导出功能实现到ics文件中。事件导出正常,但时间存在问题 - 它们在导出的文件中丢失,但以原始格式存在。这是代码:

TimeZone timeZone = TimeZone.getTimeZone(e.getOrder().getTimeZone());long timeZoneOffset = 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);

我错过了什么?预先感谢您!

最佳答案

我无法重现您的代码,因为您没有完整且正确地粘贴代码示例(也许您可以这样做并包含导入?这将使回答您的问题更容易)。

但是,您是否已经看过双周刊库(请参阅: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>

希望有帮助吗?

关于java - 使用 iCal4j 设置 Activity 时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26363246/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com