ICS日历事件生成器
指导
ICS日历事件生成器
构建一个符合标准的 .ics 日历文件,只需几秒钟,即可下载或复制原始iCalendar文本。填写事件详情,选择时区和可选的重复规则,添加提醒,即可获得一个符合RFC 5545标准的干净文件,可无缝导入Apple日历、Google日历、Outlook、Fastmail、Thunderbird、Nextcloud以及任何支持iCalendar的日历客户端。
如何使用
- 输入活动标题、可选描述以及地点或会议链接。
- 选择 定时事件 或 全天事件。对于定时事件,填写开始和结束时间。
- 选择时区。使用 浮动 表示“日历打开时所在的时区”, 世界标准时间 表示绝对时间,或选择特定的IANA时区,例如
America/Los_Angeles. - 可选地设置重复规则(每日、每周、每月、每年)、间隔和发生次数。
- 可选地添加提醒偏移、组织者和参会者邮箱列表。
- 点击下载图标以保存
.ics文件,或复制原始iCalendar文本并粘贴到邮件或聊天中。
特征
- 符合标准的输出 – 生成符合RFC 5545标准的
VCALENDAR/VEVENT块,包括PRODID,UID,DTSTAMP,以及正确的75字节行折叠。 - 全天或定时事件 – 自动在
DTSTART;VALUE=DATE和完整日期时间格式之间切换。 - 智能时区处理 – 选择浮动时间、UTC时间(后缀为
Z)或以TZID参数形式写入的命名IANA时区。 - 重复事件 – 生成
RRULE用于每日、每周、每月或每年重复,可选INTERVAL且COUNT. - 提醒 – 添加一个
VALARM块,提醒触发时间可配置,范围从事件前0分钟到事件前1周。 - 组织者和参会者 – 生成
ORGANIZER且ATTENDEE属性,包含CN显示名称和mailto:地址。 - 安全文本转义 – 逗号、分号、反斜杠和换行符均按规范进行转义,确保描述内容不会破坏文件。
- 纯客户端运行 – 所有操作均在浏览器中进行,事件详情不会离开您的电脑。
何时使用此工具
- 从没有日历集成的应用或新闻通讯中发送会议邀请。
- 在活动页面生成“添加到日历”文件。
- 在不使用重型客户端界面的情况下重建损坏的重复事件。
- 测试下游日历对不寻常重复规则或提醒组合的解析方式。
- 在输入数据位于电子表格或文档中的批量事件文件生成场景中使用。
常问问题
-
什么是ICS文件?
ICS文件是一种遵循RFC 5545定义的iCalendar标准的纯文本日历内容。它以VCALENDAR信封开始,包含一个或多个VEVENT组件,描述会议、全天事件、提醒、重复规则和参会者。几乎每个现代日历应用都支持ICS,因此它成为不同厂商之间事件交换的事实标准。
-
浮动、UTC和命名时区之间的区别是什么?
浮动时间没有任何时区,因此日历在任何位置都显示相同的墙钟时间。UTC时间锚定在协调世界时,其显示时间会根据查看者的时区偏移而变化。命名IANA时区(如Europe/Paris)会发出TZID参数,告诉日历将时间解释为该特定时区的本地时刻,这是唯一能正确处理夏令时转换的方法。
-
RRULE如何描述重复事件?
RRULE是iCalendar中的一个属性,通过FREQ值(每日、每周、每月或每年)以及可选的修饰符(如INTERVAL、COUNT、UNTIL、BYDAY、BYMONTHDAY和BYMONTH)来定义重复模式。第一个实例由DTSTART锚定,后续每个实例通过应用规则推导得出,这使得文件紧凑,并允许日历客户端按需展开或折叠该系列。
-
为什么全天事件的DTEND是排他性的?
RFC 5545规定,当事件使用VALUE=DATE时,DTEND指向事件结束后的第一天,而不是事件的最后一天。例如,5月1日的一天事件,其DTSTART;VALUE=DATE:20260501和DTEND;VALUE=DATE:20260502。这种约定与计算机科学中的半开区间一致,防止日历在计算持续时间时出现偏移错误。
-
UID属性保证了什么?
UID是一个全局唯一的字符串,用于标识特定事件在不同日历系统中的身份。两个共享相同UID的ICS文件被视为同一个事件,这是更新和取消传播的方式:客户端接收到一个带有原始UID和更高SEQUENCE号的新VEVENT,然后替换现有条目。一个好的UID应结合时间戳、强随机性以及域名后缀,以避免冲突。
-
iCalendar中的行折叠是如何工作的?
iCalendar要求内容行长度不超过75个八位字节,较长的值通过在行末插入CRLF后跟一个空格字符进行折叠。解析器通过移除紧跟在CRLF后的任何空格字符来反转该操作。此规则对于与非常老的邮件传输系统的兼容性至关重要,也是野外最常见的错误格式ICS文件的主要来源之一。
