広告が嫌いですか? 行く 広告なし 今日

iCalendar (ICS) から JSON への変換ツール

データ開発者文章
[iotools_icalendar_ics_to_json_converter]

ガイド

iCalendar (ICS) to JSON Converter

iCalendar (ICS) から JSON への変換ツール

The iCalendar (ICS) to JSON Converter parses RFC 5545 calendar content into structured JSON you can read, transform, or feed into another program. Paste an exported .ics file from Google Calendar, Apple Calendar, or Outlook and the tool unfolds long lines, unescapes TEXT values, separates property parameters from values, parses DTSTART and DTEND into ISO 8601, and lifts RRULE into a typed object — all in your browser. Nothing is uploaded to a server.

使用方法

  1. Paste the contents of an .ics file into the input box, or drop the file onto the uploader.
  2. Choose your output options: pretty-print, a flat events array, ISO 8601 date parsing, or include the raw property values alongside parsed ones.
  3. Optionally enable RRULE preview to see the first N expanded occurrences of any recurring event.
  4. Copy the JSON output or download it as calendar.json.

機能

  • RFC 5545 compliant unfolding – Rejoins continuation lines that begin with whitespace before parsing, so long DESCRIPTION and URL values are reconstructed correctly.
  • Property parameters preserved – TZID, CN, RSVP, VALUE and any X- parameters land in a structured params object next to the value.
  • Date parsing – DTSTART, DTEND, DTSTAMP, CREATED, LAST-MODIFIED, RECURRENCE-ID and DUE are converted to ISO 8601 with flags for date-only, UTC, and TZID-bound values.
  • RRULE as an object – FREQ, INTERVAL, COUNT, UNTIL, BYDAY, BYMONTH and friends are parsed into a typed object instead of a single opaque string.
  • VTIMEZONE and VALARM kept intact – Nested components are emitted as a components array on their parent VCALENDAR or VEVENT.
  • Organizer and attendee addresses – mailto: prefixes are stripped into an email field while preserving the original calAddress.
  • Recurrence preview – Optionally expand DAILY, WEEKLY (with BYDAY), MONTHLY and YEARLY rules into the first N occurrences for quick eyeballing.
  • クライアントサイドのみ – Files are parsed in your browser. Calendar contents never leave your machine.

ベース64画像文字列に遭遇し、それが実際に何であるかを確認する必要があるとき、このツールを使います。APIレスポンスに埋め込まれたサムネイルをデバッグする、CSSやHTMLメールに埋め込まれた画像を確認する、トラッキングピクセルを逆エンジニアリングする、画像生成APIからの出力の確認を行う、またはデータベースエクスポートから資産を回復するなどです。レンダリングがブラウザ内で行われるため、プロダクションに送信する前にベース64パラメータが正しく構成されているかを迅速に確認する手段としても使えます。

Reach for the converter when you need to read calendar data programmatically — diffing two .ics exports, loading events into a spreadsheet, pre-processing meetings for a chatbot, or auditing what an exported booking actually contains. JSON is far easier to grep, validate, and pipe into another tool than raw line-folded iCalendar text.

よくある質問

  1. What is RFC 5545 and why does it matter for parsing .ics files?

    RFC 5545 is the specification that defines the iCalendar data format used by Google Calendar, Apple Calendar, Outlook, and most calendaring apps. It defines property names, parameter syntax, value types, line folding rules at 75 octets, escaping inside TEXT values, recurrence rules (RRULE), and how time zones are referenced through VTIMEZONE blocks. Parsing .ics correctly means handling all of that — naive splits on newlines or commas miss escaped sequences and folded continuations.

  2. What is line folding in iCalendar content?

    Line folding is the rule that any content line longer than 75 octets must be broken across multiple physical lines, with each continuation line starting with a single whitespace character (space or tab). When reading an .ics file you must rejoin folded lines before parsing — otherwise long descriptions, URLs, and recurrence rules will be split mid-value and the resulting properties will be corrupt.

  3. How does VTIMEZONE relate to DTSTART and DTEND?

    DTSTART and DTEND can carry a TZID parameter that references a VTIMEZONE block defined elsewhere in the calendar. The VTIMEZONE block describes the UTC offset and its daylight-saving transitions for that named zone, so the wall-clock time written in DTSTART can be resolved to a precise UTC instant. Times marked with a trailing Z are already in UTC, while times with no TZID and no Z are floating — they should be displayed in whatever local time the reader is in.

  4. Why are commas, semicolons, and newlines escaped inside SUMMARY and DESCRIPTION?

    Inside a TEXT value the characters comma, semicolon, and backslash, plus literal newlines, all have structural meaning at the higher level: commas separate list items, semicolons separate parameters, and newlines end content lines. RFC 5545 §3.3.11 reserves the escape sequences \\, \,, \;, and \n (or \N) so authors can include those characters inside a value. A parser must reverse those escapes after splitting the line, not before.

  5. What is an RRULE and how is it different from a list of explicit dates?

    RRULE encodes a repeating pattern — for example FREQ=WEEKLY;BYDAY=MO,WE;COUNT=10 means ten occurrences, every week on Monday and Wednesday. It is a compact instruction the calendar app expands into individual occurrences. RDATE and EXDATE complement RRULE: RDATE adds extra explicit dates to the series, and EXDATE removes individual dates from it. Together they describe complex calendars (holidays, anchored exceptions) in a few lines.

広告なしで楽しみたいですか? 今すぐ広告なしで

拡張機能をインストールする

お気に入りのブラウザにIOツールを追加して、すぐにアクセスし、検索を高速化します。

に追加 Chrome拡張機能 に追加 エッジ拡張 に追加 Firefox 拡張機能 に追加 Opera 拡張機能

スコアボードが到着しました!

スコアボード ゲームを追跡する楽しい方法です。すべてのデータはブラウザに保存されます。さらに多くの機能がまもなく登場します!

ニュースコーナー 技術ハイライト付き

参加する

価値ある無料ツールの提供を継続するためにご協力ください

コーヒーを買って