问题标签 [ical4j]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
914 浏览

timezone - ICS 文件中的 DST 问题。如何从 Web 服务/网站获取时区定义以包含在 ICS 文件中?

我们从 Java 代码生成一个 ICS 文件,并最初以 UTC 格式输入时间。

我们发现,在创建定期约会时,由于第一个日期和最后一个日期之间的 DST 更改,一些会议是在正确时间之前或之后 1 小时创建的。

我们已经进行了测试,发现如果我们不包含时区时间更改的完整定义,就不可能使其正常工作。例如,对于在波士顿举行的会议,以下定义有效:

有没有办法从任何现有的 Web 服务或网站获取这些信息?还是我们需要维护所有应用程序所涉及国家的定义?

我们发现 ICal4j 库的存在,但它似乎提供了生成 .ics 文件结构的方法,但没有提供我们需要的时区信息。

任何人都知道一种更简单的方法可以使 .ics 文件在不同的时区正常工作,当第一个日期和最后一个日期之间有时间变化时定期约会?

0 投票
1 回答
2266 浏览

java - 使用 CalDav API 集成 Yahoo 日历

如果用户名和密码已知,我正在尝试访问用户的雅虎日历。我找到了一个使用 CalDav api 来完成任务的代码片段。代码使用 2 个库 sardine.jar 和 ical4j.jar。该代码的文档说该代码适用于谷歌日历和雅虎日历。只有我们必须相应地更改 CalDav 服务器的 url。代码适用于谷歌日历,但是当我更改雅虎日历的代码时,它不起作用。我收到以下错误:

Stacktrace:] 根本原因 net.fortuna.ical4j.data.ParserException:第 1 行错误:预期 [-3],读取 [-1]

我认为这是由于 google 和 yahoo 的 ics 文件格式不匹配,或者没有为 yahoo 创建 ics 文件。当我从浏览器而不是雅虎使用这个 URL 时,我发现了一个谷歌日历的 ics 文件。

这是我使用的代码:

这些是网址:

谷歌日历:https ://www.google.com/calendar/dav/ <>@gmail.com/events/

雅虎!日历:https : //caldav.calendar.yahoo.com/dav/ <>@yahoo.es/Calendar//

请让我知道代码中的内容或如何以编程方式获取雅虎日历的 ics 文件。

0 投票
1 回答
958 浏览

icalendar - 从 ics 文件构建日历时出现 ical4j ParserException

我有这段代码可以使用 ical4j 从 ics 文件中导入日历:

代码总是抛出 ParserException。我发现如果我从这行 ics 文件中删除 X-RESPONSE-COMMENT,则代码通过:

所以也许问题来自 X-RESPONSE-COMMENT。任何人都可以帮忙吗?谢谢。

更新: 确切的例外是:

包含非法字符的行是 ATTENDEE 属性的最后一行。谢谢。

0 投票
1 回答
1250 浏览

java - ical4j 异常日历必须至少包含一个组件

我正在尝试使用 ical4j 创建和保存 ics

当我运行以下代码时,我得到一个日历必须包含至少一个组件..如何将组件附加到我的日历,或将一个事件附加到我的日历...

线程“main”net.fortuna.ical4j.model.ValidationException 中的异常:日历必须包含至少一个组件

0 投票
0 回答
226 浏览

java - 使日历可在所有(实际上并非所有)客户端上显示


我需要创建一个日历,然后通过电子邮件将此日历作为附件发送。经过一番研究,我发现最好的方法是发送日历不是作为文件附件,而是将邮件正文部分的内容类型修改为text-calendar. 我必须提供兼容性

  1. 邮箱
  2. 安卓(使用 gmail)
  3. iOS 日历
  4. 外表

我必须提供的外观类似于您可以在 Gmail 上使用的外观,因此带有接受/拒绝链接。我发现的解决方案在 Gmail、Outlook(和 Thunderbird 等其他客户端)上运行良好,但在 iOS 或 Android 上运行良好(至少在 4.0.3 之前的旧版本上可以安装 Google 日历应用程序)。基本上,iOS默认不显示accept/decline链接,但是你必须点击附件(不管我用哪种方式发送日历,设置content-type来text/calendar生成iOS的邮件客户端显示a mime-attachment.ics)才能将日历添加到您的个人日历。
我现在的方法是将 ics 文件转换为一些 html,并用“字段”格式化电子邮件的正文multipart/alernative(对不起,我没有更好的术语),以便客户理解text/calendar将显示该部分,而不理解它的客户端将显示 html 部分。现在,我的问题是:如何生成链接?例如,我提取了一个链接,它看起来像

如何生成eidtok?在我看来,它们是某种哈希码,或者无论如何是某种代码。
另一方面,如果您知道一种更好的方法来生成日历并让它至少在我之前提到的客户上工作,请随时提出建议。我生成日历,ical4j即使我不想更改,如果我可以生成更高质量的代码,我也会这样做。
提前致谢

0 投票
1 回答
1043 浏览

java - 尝试在描述属性后使用换行符解析 ical4j 问题

我试图在这里解析 ical: http ://www.dsek.se/kalender/ical.php ?person=&dsek&tlth

使用此代码:

好吧,这基本上是日历代码的要点。

但是我遇到了问题,我认为“DESCRIPTION:text”在被解析之前会以某种方式转换为“DESCRIPTION:newLine text”,因此我认为解析器将无法工作。

问题仅出现在DESCRIPTION之后的行上:有一个空格,看起来像“DESCRIPTION:text”的行工作正常。我还测试了另一个没有这些换行符的文件,并且该文件工作正常。

所以我猜这可能是某种字符编码问题?URL 对象改变了文件的编码?文件上的字符编码是 ISO-8859-15

还是只是他们在“DESCRIPTION:”之后用换行符编写了文件?如果是这种情况,我该如何解决?:S

如果它在某种程度上很重要,该应用程序在 android 上运行 :)

0 投票
1 回答
904 浏览

java - 附件在 Lotus Notes 上发送会议邀请时出现

我正在尝试使用 iCalendar 和 Java Mail API 在 Lotus notes 上发送会议邀请,它工作正常,除了邮件内容中的附件即将到来,甚至没有打开。我已经检查了我的代码,并且可以确认代码末尾没有包含此类附件。有人可以解释一下为什么会这样吗?这是我的一段代码:

下面是我运行此代码的主要方法:

0 投票
1 回答
2272 浏览

java - 如何从 Gmail Ical4j API 发送会议邀请

我正在使用Ical4j API 从我的 gmail id 发送会议邀请,但如何设置

VEvent反对邮件 API 类

我正在尝试这样的事情

但它抛出异常。任何想法我该怎么做?

0 投票
1 回答
641 浏览

java - 如何按照标准 rfc2445 验证重复字符串

我正在使用谷歌日历 api,并且正在使用 iCal4j 生成重复字符串。我也会使用这个库来检查一个应该包含重复字符串的字符串。我怎么能这样做?还有其他方法吗?非常感谢您对 Alberto 的任何帮助 :)

0 投票
1 回答
1684 浏览

java - iCal4J 错误:net.fortuna.ical4j.util.Configurator

我正在使用 iCal4J 向 MS Outlook 发送约会,它运行良好,约会正在进行中。但是我的控制台显示以下内容:

我不担心的'INFO'行,它是net.fortuna.ical4j.util.Configurator我担心的。任何人都可以详细说明这意味着什么。我不认为这是一个例外,因为它会在我的try...catch.

在我的研究中,我发现提到了 enable ConfigurationHints,但我找不到它的例子。

net.fortuna.ical4j.util.Configurator我需要关注的错误吗?如果是,我该如何解决?