# ICS Viewer

> 在瀏覽器直接打開 .ics 行事曆檔案：活動時間、地點、參加者一目了然，附月曆檢視和 CSV 匯出。檔案完全不會上傳，解析全在你的電腦本機完成，關掉分頁就什麼都不留。

- URL: https://bytescope.dev/zh-Hant/ics-viewer/
- Locale: zh-Hant · Also: [en](https://bytescope.dev/en/ics-viewer.md) · [ja](https://bytescope.dev/ja/ics-viewer.md)
- Runs: 行事曆是在你的裝置上直接讀取。行程、與會者和地點都在網頁內解析，絕不傳送到任何地方——不需要上傳、不需要帳號，也不會將任何內容新增到你的個人行事曆中。
- Requires: Any modern browser (Chrome, Edge, Firefox, Safari), desktop and mobile.
- Updated: 2026-09-08

## What it does

`.ics` 檔是 Google 日曆、Outlook、Apple 行事曆和各種會議預約系統寄邀請或匯出行程時給你的格式——但直接點兩下打開，通常代表還沒看到內容就先把它匯進了自己的行事曆。改成把檔案拖到這裡：解析全在頁面裡完成，每個活動一列，列出開始、結束、地點、主辦人、參加者和狀態，另外還有月曆檢視，讓你看清整份行程實際落在哪幾週。

檔案從頭到尾不會離開這台電腦。行事曆匯出檔寫著你跟誰見面、什麼時候、在哪裡——只是想看個內容，實在沒必要把這些交給別人的伺服器。所以解析、月曆格線和 CSV 全都在你的瀏覽器裡完成，頁面根本沒有上傳端點，就算手滑也傳不出去。

重複活動只在答案百分之百確定時才展開。`FREQ=DAILY`、`FREQ=WEEKLY`、`FREQ=MONTHLY` 搭配 `INTERVAL`、`BYDAY`、`COUNT`、`UNTIL` 的規則會實際計算並畫上月曆；超出這個範圍的——`BYSETPOS`、`FREQ=YEARLY`，或這個解析器沒有十足把握的規則——就原封不動列出規則文字、不做計算。因為一份會默默生出錯誤日期的行事曆，比一份坦承「這條規則太複雜」的行事曆糟糕得多。

時間一律照檔案裡寫的顯示。頁面沒有內建時區資料庫，所以帶 `TZID=Europe/Berlin` 的值或結尾是 `Z` 的 UTC 值，會標明它的時區基準，而不是偷偷換算成你的——會議撞期往往就是這種偷換算造成的。CSV 匯出遵守同一條原則：照原文每個活動一列，重複規則放在獨立欄位，行程進到試算表的路上什麼都不會漏。

## Limits

Does not subscribe to calendar feeds or edit events; it previews an .ics file.

## FAQ

### 我的行事曆檔案會被上傳嗎？

不會。瀏覽器直接從你的磁碟讀檔、在頁面裡解析，CSV 也是在本機產生。整個過程沒有伺服器、不用帳號，關掉分頁就什麼都不留。

### 怎麼打開 .ics 檔又不匯入自己的行事曆？

這正是這個頁面的用途。把檔案拖進來就能看到活動清單和月曆檢視，完全不會動到你自己的行事曆——這個頁面根本沒有存取 Google 日曆、Outlook 或 Apple 行事曆的權限，自然什麼都加不進去。

### 哪些重複活動會展開到月曆上？

常見的那幾種：`FREQ=DAILY`、`FREQ=WEEKLY`、`FREQ=MONTHLY`，搭配 `INTERVAL`、`BYDAY`、`COUNT`、`UNTIL`。這些都會精確計算，包括「每月 31 號的活動遇到沒有 31 號的月份就直接跳過，而不是滑到 30 號」這條規則。

### 遇到工具不支援的重複規則會怎樣？

它會被單獨列出來，附上原始的 `RRULE` 文字和拒絕計算的原因，月曆上只畫該活動本身的 `DTSTART`。我們不會捏造近似的重複序列——月曆上一個看起來很合理的錯誤日期，正是會害你錯過會議的那種失誤。

### 時間會換算成我的時區嗎？

不會，這是刻意的設計。頁面沒有內建時區資料庫，所以帶 `TZID=` 的值或結尾為 `Z` 的 UTC 值都照原樣顯示、標明基準。用猜出來的規則換算，比直接讓你看到檔案實際寫什麼更危險。

### 可以把活動匯到 Excel 或 Google 試算表嗎？

可以。挑好想要的欄位再下載 CSV——UID、摘要、開始、結束、全天標記、地點、說明、狀態、主辦人、參加者、分類和重複規則都有。記得讓 BOM 選項保持開啟，Excel 才能正確顯示非英文的標題。

### 重複活動的每一次發生在 CSV 裡都會有一列嗎？

不會。CSV 忠實反映檔案內容：每個 `VEVENT` 照原文一列，`RRULE` 放在重複規則欄。展開重複是月曆檢視的工作，所以匯出的內容不會因為你剛好捲到多遠的未來而改變。

### 檔案壞掉或根本不是行事曆怎麼辦？

工具會明確告訴你哪裡出問題。少了 `BEGIN:VCALENDAR`、區塊沒關閉、日期解析不了、期間格式錯誤，每一種都有專屬的訊息並附上出錯的行號；解析成功的活動照樣顯示，不會跟壞掉的部分一起被丟掉。

## Related tools

- [VCF to CSV Converter](https://bytescope.dev/zh-Hant/vcf-to-csv.md) — 將 .vcf 聯絡人匯出檔轉換為 Excel 能正常開啟的 CSV。
- [Timestamp Converter](https://bytescope.dev/zh-Hant/timestamp.md) — 雙向轉換 Unix 時間戳與 ISO 日期格式。
- [File Type Identifier](https://bytescope.dev/zh-Hant/file-type.md) — 當副檔名錯誤或遺失時，透過位元組特徵辨識檔案格式。
