ICS 日历查看器与重复规则展开
.ics 文件是日历应用看得懂、而你看不懂的附件。用文本编辑器打开,只会看到被折行的内容、转义过的逗号,以及 RRULE:FREQ=MONTHLY;BYDAY=-1FR 这样的一行——它并不告诉你到底指哪几个星期五。 这个查看器会正确地还原折行,显示每个事件的时间、地点、组织者、参与者和状态,然后完成人脑算不出来的那部分:把重复规则展开成具体日期。每周一和周三、每月最后一个工作日、从某个开始日期起每隔一周的周二——你会直接看到日期列表,其中 EXDATE 排除的日期已被去掉,RDATE 追加的日期也已合并进来。 时间可以按文件中写的样子(事件本身的时区)显示,也可以换成你所在的时区或 UTC。重复按照标准规定在挂钟时间上展开,所以夏令时切换后 09:00 的会议仍然是 09:00,而不会平移一小时。 文件在你的浏览器中读取,不会上传任何内容。这一点在这里尤其重要:日历导出文件通常包含其他人的姓名和邮箱地址。
拖入或粘贴 .ics 文件即可查看。
使用方法
- 拖入 .ics 或 .ical 文件,或直接粘贴其文本。
- 查看事件列表:时间、时长、地点、组织者、参与者和状态。
- 对于重复事件,查看规则下方展开出来的实际日期。
- 切换时区,对比按原文、按本地时区和按 UTC 的显示结果。
- 需要时复制纯文本摘要,粘贴到别处。
常见问题
- FREQ=MONTHLY;BYDAY=-1FR 这样的规则是什么意思?
- 每月最后一个星期五。这个工具不去讲解语法,而是直接把规则展开成日期列表——你真正想知道的就是这些日期。
- 支持 RRULE 的哪些部分?
- 支持 FREQ(每日、每周、每月、每年)、INTERVAL、COUNT、UNTIL、含 2TU 和 -1FR 这类序数的 BYDAY、含负数的 BYMONTHDAY、BYMONTH、BYSETPOS、WKST,以及 EXDATE 和 RDATE。较少使用的 BYYEARDAY、BYWEEKNO 和 BYHOUR 不做展开。
- 为什么夏令时切换后时间没有变?
- 因为标准把重复定义在挂钟时间上。每天 09:00 的会议,在切换前后都是 09:00;变化的是两次事件之间的实际间隔,而不是邀请上写的时间。
- 什么是浮动时间?
- 既没有时区标记、结尾也没有 Z 的开始时间。它表示无论在哪里读取都是同一个挂钟时刻,全天提醒和部分导出文件就是这样写的。
- 为什么我的文件里有些行从词中间断开?
- 该格式会把超过 75 个八位字节的行折到下一行,并以一个空格开头。查看器在解析之前会先把它们接回去,所以在编辑器里看起来错乱的描述,在这里显示是正确的。
- 我的日历会被上传吗?
- 不会。文件在你的浏览器中解析,不会发送到任何地方。日历文件通常列有其他人的姓名和邮箱,所以这一点比平时更重要。
相关工具
ICS(iCalendar)日历事件生成器
生成包含标题、起止时间、地点、参与者、重复规则和提醒的 .ics 日历事件文件,符合 RFC 5545,全部在浏览器内生成。
Plist 查看器(二进制与 XML)
打开苹果属性列表——无论二进制还是 XML——以树形查看,并可转换为 JSON 或 XML plist。
Excel (XLSX) 转 CSV、JSON 和 Markdown
在浏览器中打开 .xlsx 工作簿,把任意工作表导出为 CSV、JSON 或 Markdown 表格——文件不会离开你的设备。
EPUB 查看器 · 元数据与正文提取
在浏览器中打开 .epub:元数据、带字数统计的章节列表、纯文本正文,以及阅读器为何拒绝这本书的结构检查。
PNG 块检查器
拖入 `.png` 文件,查看它包含的每个块 —— IHDR、IDAT、tEXt 元数据、IEND —— 带大小、CRC,以及 critical/ancillary/safe-to-copy 标志。
vCard (.vcf) 文件解析与检查器
拖放或粘贴任意 vCard 2.1、3.0、4.0 的 .vcf 导出,以卡片形式查看全部联系人 ─ 姓名、电话、邮箱、地址、所属机构、网址、生日、备注、内嵌照片以及任何 X- 自定义字段,全部在浏览器本地解析。