在您的电脑上把 .ics 和 .vcs 日历文件转换成一张 CSV 表格。时区、全天日期和重复活动在输出后含义不变。
把文件夹拖到文件列表上,即可批量转换 ICS 文件。转换器会递归遍历文件夹,找出每一个 .ics 和 .vcs 文件,包括单个文件中含有数千个活动的多日历导出文件。点击任意文件,可以预览解析出的活动。
选择"Google 日历""Outlook 日历"或"普通"。前两种与这些应用导入时要求的表头行一致,"普通"则保留解析出的每一个字段。再选择输出时区:活动自身的时区、UTC 或您电脑的时区。在列映射中可以去掉某一列、调整它的位置或重命名它的表头。
整个队列会写入目标文件夹中的同一个 Calendar.csv。您不必为每个文件打开一次"另存为"对话框,也不必在列表里逐项点击。
新版 Outlook 取消了日历 CSV 导入,Microsoft 自己的支持答复也确认了这一点。把文件直接读成表格,就不必再经过日历应用。数据由您自己排序和检查,缺了什么会在行里显示出来,而不是被导入程序悄悄丢掉。
导出日历、重新录入类别、统计每个人的工时,这些事每个月都要做一遍。批量转换一次就能把几十个 .ics 文件(每位同事或每个会议室一个)合并成一份已去重的 CSV。您的工作从统计开始。
日历文件里有每位受邀者的姓名和电子邮件地址、每次会议的主题,有时还有家庭住址。这款桌面软件从本地磁盘载入日历,把 CSV 放在它们旁边,中间不需要任何账户或服务器。
程序用真正的组件栈处理 VEVENT 和 VTODO,以及与它们并列的 VJOURNAL 条目,因此约会中的提醒仍然附在约会上,不会单独落到另一行。折叠行、转义文本、各属性单独指定的 CHARSET 和 QUOTED-PRINTABLE 编码都在读取时处理。旧的 .vcs 存档常用 windows-1251 或类似的旧代码页,转换出来同样可以正常阅读。
现代的 iCalendar (.ics) 和旧式的 vCalendar 1.0 (.vcs) 都可以读取。如果您的存档来自旧版 Outlook、Nokia 或 Sony Ericsson 手机,就要靠 .vcs 这一支。
偏移量根据日历内部的 VTIMEZONE 规则计算,包括 STANDARD 和 DAYLIGHT 块及其 TZOFFSETFROM 和 TZOFFSETTO 值。程序采用活动当天生效的那条规则。如果缺少 VTIMEZONE,则使用一张常见 IANA 名称的备用表,并给该行加上标记,这样您就能看出哪些时间戳是推测出来的。
iCalendar 中的 DTEND 不包含结束当天。5 日的全天条目在文件里存为 6 日结束 (RFC 5545),照字面理解,一天的活动在表格中就占了两天。程序在这里会把边界换算回来。ISO 8601 形式的 DURATION 值会展开成实际的结束时间,VTODO 项目则带上各自的 DUE、COMPLETED 和 PERCENT-COMPLETE 字段。
RRULE 和 RDATE 按文件中的原样保留,EXDATE 和 RECURRENCE-ID 也是如此。在原始规则旁边,还有一列便于阅读的说明,例如"每 2 周的周一、周三,直到 2026-12-31"。
参与者的 CN 和 ROLE 参数连同 PARTSTAT 一起保留。类别或 RDATE 列表这类多值字段可以写入带编号的多列,也可以合并到一个单元格,看哪种更适合您的表格。重复项按 UID 和 RECURRENCE-ID 合并,SUMMARY 加 DTSTART 作为备用键。输出为带 BOM 的 UTF-8,引号规则遵循 RFC 4180,所以 Excel 双击就能打开西里尔文或 CJK 文本,不会弹出导入向导。
转换前先选好列布局,得到的文件无需手动修改表头行即可使用。
您需要的是按行列出的每人工时和类别,而不是月视图。导出文件会变成一张表格,当天晚上就能做数据透视。
迁移邮箱或合并共享日历时,数据可以在中途检查、去重后再移交,而不是直接送进一个您无法检查的导入过程。
有人给您发来一堆邀请,或者您导出了自己的日历,而您只是想看看里面的内容。整个过程完全不需要日历账户。