Back

CSV to ICS Converter

シフト・授業・締切テンプレから iCalendar(.ics) を生成します。処理はブラウザ内で完結します。

必須ヘッダー: summary, start, end

Detected delimiter: ,

Security Guardrails

  • ブラウザ内処理のみ(アップロードなし)
  • CSV式文字列の中和オプション(既定ON)
  • サイズ上限: 2MB、行上限: 5000
  • バイナリ混入を検知した場合は処理を中断

CSV to ICS Converter: Guide

Intent
Convert schedule CSV files to iCalendar (.ics) with template-based validation, then import into your calendar app. Local-only processing.
What it does
Reads template-based CSV input, validates required fields/date formats/optional recurrence rules, then generates standards-friendly .ics output for calendar import.
Key features
Shift/Class/Deadline templates, Validation errors by row, Timezone mode (floating/TZID/UTC), RRULE (freq/interval/count/until/byday/bymonthday/bymonth/bysetpos/wkst), Error rows CSV export, ICS download, Local-only processing
Privacy
Everything runs locally in your browser. CSV data is not uploaded.
Best for
  • Operations teams converting existing schedule CSV files into calendar events
  • People who want to avoid manual event-by-event calendar entry
  • Users who need local-only conversion for sensitive schedule data
Why this tool
  • Template-first mapping reduces setup mistakes
  • Validation catches broken date and recurrence formats before export
  • Error rows can be exported and fixed in bulk
  • Security guardrails (formula neutralization + input limits) are built in

How to use

  1. 1Select a template (Shift, Class, or Deadline).
  2. 2Upload CSV or paste CSV text.
  3. 3Set date-time mode (floating, TZID, or UTC).
  4. 4Run Validate & Build ICS and fix any row errors.
  5. 5Download the generated .ics file and import it into your calendar.

Common mistakes

  • Using wrong date format (expected YYYY-MM-DD HH:mm or YYYY-MM-DD by template).
  • Invalid RRULE inputs (freq/interval/count/until/byday/bymonthday/bymonth/bysetpos/wkst format).
  • Missing required headers for the selected template.
  • Trying to process extremely large files beyond local safety limits.

Examples

Shift schedule import
Template: Shift Headers: summary,start,end,location,description,url Output: .ics with one VEVENT per row
Deadline import
Template: Deadline Headers: summary,due_date,description,url,all_day Output: all-day events in .ics