把文件交给它
选择或拖入 .ics 文件;也可以直接把内容粘进来。
选择 .ics 文件或直接粘贴日历文本,就能看清这份日历到底写了什么:每个 VEVENT、VTODO、VJOURNAL、VFREEBUSY 组件的 UID、标题、开始与结束时间,以及结束时间取自 DTEND、DUE 还是 DURATION。时间线可以按 UTC 或本机时区渲染,每个时间旁都标明所用时区。重复日程按 RRULE、RDATE 展开,并应用 EXDATE 排除和 RECURRENCE-ID 改期;文件内嵌的 VTIMEZONE 规则优先用于换算偏移。组织者和参会人连同 CN、PARTSTAT、角色一并列出。诊断表记录格式错误的行、无效日期和不支持的规则,原始文件和解析结构 JSON 都可以下载。
或把文件拖到这里
选择或拖入 .ics 文件;也可以直接把内容粘进来。
文件在你的浏览器里读取和解析,不会先传到服务器。
看一眼识别或转换的结果,再用页面上的复制、下载等操作。
想知道文件是怎么处理的? 看统一的隐私说明 →
把 .ics 文件拖到本页或粘贴文本,事件和待办的起止时间、时区、重复规则就会直接列出,不写进任何日历。「时间线」按先后列出每次发生,「组件」表按源文件顺序给出 UID 和行号;用「渲染时区」可以在 UTC 和本机时区之间切换。
不会。.ics 文件由你浏览器标签页里的代码解析,日程、参会人邮箱和备注都不会发出去。读取和展开过程不发起网络请求,日历数据也不写入 localStorage、IndexedDB 或 Cookie,关闭页面即清空。全站通用的隐私原则见隐私页面。
在 Windows 或 macOS 上用 Edge、Chrome、Firefox、Safari 打开本页再选文件即可,不用装软件。也不需要 Outlook、苹果日历或谷歌账号。因为不会导入,你可以先核对日期和参会人,再决定要不要加进自己常用的日历。
把 .ics 附件存到 iPhone「文件」或安卓「下载」,再用手机浏览器打开本页选择它即可。也可以复制邀请文本直接粘贴。系统自带的通常只有「添加到日历」,这里能先看到原样的组织者、参会人列表、时区和重复规则;屏幕较窄时,宽表格可以左右滑动。
第一行非空内容必须是 BEGIN:VCALENDAR,文本必须是合法 UTF-8,否则就会被拒绝。常见原因有:把网页报错页存成了 .ics、导出时用了 GBK 或 Windows-1252 编码、某个组件的 END 和 BEGIN 对不上。把文件另存为 UTF-8 后重试;如果是从邮件里复制的原始 MIME 片段,连同 Content-Type: text/calendar 头一起粘贴,工具会按声明的字符集以及 base64、quoted-printable 编码解码。
最大 20 MB(20,000,000 字节),超过的在解析前就会被拒绝。源码面板显示前 150,000 个字符,只有全文都能显示时才提供原文下载;时间线最多列 5,000 行,组件嵌套最多 10 层,超过会报错。
每个重复系列最多展开 1,000 次、最远到起始后 100 年,到上限会提示最后展开到哪一天。COUNT 超过 1,000 的规则直接拒绝,而不是只展开一部分;用到 BYSETPOS、BYWEEKNO、BYYEARDAY、BYHOUR、BYMINUTE、BYSECOND 的规则标为不支持。FREQ、INTERVAL、COUNT、UNTIL、BYDAY、BYMONTHDAY、BYMONTH、WKST 以及 RDATE、EXDATE、RECURRENCE-ID 都能处理。已知例外:YEARLY 规则把 BYMONTHDAY 和带序号的 BYDAY 组合(如 BYMONTHDAY=1;BYDAY=1MO)且没有 BYMONTH 时,序号被忽略,会把每个恰逢周一的 1 号都列出来;按这种规则写的内嵌时区也可能算错偏移。
先看时间旁标注的时区:时间线默认按 UTC 显示,切到本机时区后相差整数小时的情况通常就对上了。没有 TZID 也没有 Z 的是浮动时间,标为「文件中无时区」;TZID 既没在文件里定义、又不是 IANA 名称(比如 Windows 时区名)时显示为无法解析,不猜偏移。重复日期是本工具自己算的,日历软件对规则处理不同就可能显示别的日期。
本工具无法判断邀请的真伪或是否恶意,只把文件内容当作纯文本展示,让你自己判断。链接、ATTACH 目标和参会人地址都按纯文本显示、不会加载,也不会向组织者回传任何东西;ORGANIZER 和 ATTENDEE 标注为文件中的声明。藏有伪造日历行的值、带脚本或 javascript: 链接的 HTML 描述、../../etc/passwd 这类路径形式的附件都会被标出,但不做病毒查杀。
只说明文件写的显示名里含有另一个邮箱,和 mailto 地址不是同一个。工具会在「CN 与地址不一致」列标为 true,并把两段文字分开列出。CN 是写文件的人随意填的文字,可以写成任何人的邮箱,所以显示名眼熟不代表此人真的发了邀请;PARTSTAT 里的「已接受」同样只是文件里的声明。
可以:「结构」面板提供 .structure.json 下载,「源文件」面板可原样下载 .ics。JSON 里包含解析出的每个组件、时间、重复展开结果、参会人和诊断,它是对解析结果的描述,不是能被其他日历导入的格式;输入是 MIME 片段时,下载的是解码后的日历文本。