行事曆 ICS 檢查與產生器
檢查 ICS 檔、預覽重複發生時間、產生新的行事曆檔
匯入行事曆
支援 .ics / .ical 檔,可以一次選多個。檔案只在你的瀏覽器裡解析,不會上傳,也不會連到 Google 或 Outlook。
拖入 ICS 檔案
或選擇下方方式匯入
顯示時區
只影響畫面上怎麼顯示,不會改動檔案裡的值。沒有時區的時間(floating)會照這個時區解讀,並且一律標示出來。
檢查結果
語法檢查通過不等於每一套行事曆軟體都會接受 —— 匯入前建議先在目標軟體試一次。
事件清單
時間語意分四種:全天、UTC、指定時區、沒有時區。點一列可以看它的發生時間。
| 主旨 | 開始 | 語意 | 長度 | 重複 |
|---|
發生時間預覽
沒有結束條件的規則會無限重複下去 —— 這裡只展開有限筆,並且告訴你是被哪一個上限擋住的。
事件
展開天數
天
最多筆數
次
年度行事曆
整年獨立展開,跟上面的「展開天數」無關。重複事件依所選年度重算;跨日事件會把涵蓋到的每一天都標起來。
事件範圍
有事件
今天
已選取
日週末
跳至月份
行程內容
時間與時區分開填。全天事件請直接填「包含結束日」的區間,工具會依 RFC 5545 換算成不含結束日的邊界。
主旨
地點
說明
全天事件
時區
開始
結束
狀態
分類
URL
重複與提醒
提醒只會寫成顯示型 VALARM,這支工具不會、也不能在背景替你響鈴。
重複頻率
間隔
星期
每月依據
結束條件
次數
次
重複到
排除日期
已排除
提醒
接下來的發生時間
檢查與匯出
輸出的是一般匯入用的 ICS,刻意不寫 METHOD —— 帶 METHOD:REQUEST 的檔案會被部分軟體當成會議邀請,可能覆蓋收件者既有的行程。
使用說明 8
四種時間語意、重複規則、以及這支工具刻意不做的事
四種時間語意
全天(只有日期)、UTC(結尾是 Z)、指定時區(帶 TZID)、沒有時區。最後一種叫 floating time,它的意思是「裝置上的當地時間」—— 同一個檔案在台北和東京會顯示成不同的絕對時刻。本工具不會把它當成 UTC。
全天事件的結束日
RFC 5545 規定 DTEND 是「不含結束日」的邊界:9 月 1 日到 9 月 3 日這三天,DTEND 要寫 20260904。畫面上填的是包含式的區間,序列化時工具會自己加一天,並在旁邊寫出實際涵蓋的日期。
夏令時間的缺口與重疊
春天往前撥的那一小時,當地時間根本不存在;秋天往後撥的那一小時則會出現兩次。這兩種情況都會標出來,不會無聲地替你位移。
無法解析的時區
優先採用檔案裡自帶的 VTIMEZONE,其次是瀏覽器認得的 IANA 時區名稱。像「Taipei Standard Time」這種 Windows 專用的名稱,工具會標成無法解析、請你指定,不會替你猜一個。
支援的重複規則
DAILY/WEEKLY/MONTHLY/YEARLY,搭配 INTERVAL、BYDAY(含 -1FR 這種序數)、BYMONTHDAY、BYMONTH、BYSETPOS、COUNT/UNTIL,另外處理 RDATE、EXDATE 與 RECURRENCE-ID。其他合法但這一版不展開的組合會照原文保留,只是標示出來。
展開上限
預設 90 天、最多 200 次,可以自己調高,硬上限是 2000 次。沒有 COUNT 也沒有 UNTIL 的規則會無限重複,如果不設上限,整個分頁會被算到當掉。
刻意不做的事
不連 Google 或 Outlook、不代寄邀請、不在背景執行提醒。輸出也不預設 METHOD:REQUEST 或 CANCEL —— 那會讓匯入變成寄邀請或取消既有行程。
語法通過不等於相容
各家行事曆軟體接受的欄位範圍不同。這支工具檢查的是 RFC 5545 的語法與語意,實際匯入 Outlook、Apple 行事曆或 Google 日曆前,還是建議先拿一個測試行事曆試一次。