iCalendar (ICS) zu JSON-Wandler
Führung
iCalendar (ICS) zu JSON-Wandler
Der iCalendar (ICS)-in-JSON-Converter analysiert den RFC 5545-Kalenderinhalt und wandelt ihn in eine strukturierte JSON-Form um, die Sie lesen, transformieren oder in ein anderes Programm einleiten können. Fügen Sie den exportierten .ics-Dateiinhalt aus Google Calendar, Apple Calendar oder Outlook in das Eingabefeld ein und das Tool entfaltet lange Zeilen, entwirft TEXT-Werte, trennt Eigenschaftsparameter von Werten, analysiert DTSTART und DTEND in ISO 8601 und hebt RRULE in ein typisiertes Objekt auf – alles direkt in Ihrem Browser. Keine Daten werden an einen Server hochgeladen.
Nutzung
- Fügen Sie den Inhalt einer .ics-Datei in das Eingabefeld ein, oder ziehen Sie die Datei auf den Upload-Container.
- Wählen Sie Ihre Ausgabestellungen: Formatierung, ein flaches Ereignisarray, ISO 8601-Datumsanalyse oder die Aufnahme der Roh-Eigenschaften neben den analysierten Werten.
- Aktivieren Sie optional die RRULE-Vorschau, um die ersten N Auftretungen eines wiederkehrenden Ereignisses zu sehen.
- Kopieren Sie den JSON-Ausgabewert oder laden Sie ihn als
calendar.json.
Funktionen
- RFC 5545-konformes Entfalten – Rejoinen von Fortsetzungszeilen, die mit einem Leerzeichen beginnen, bevor die Analyse erfolgt, damit die Werte von LONG DESCRIPTION und URL korrekt wiederhergestellt werden.
- Eigenschaftsparameter erhalten – TZID, CN, RSVP, VALUE und alle X-Parameter landen in einem strukturierten
paramsObjekt neben dem Wert. - Datumsanalyse – DTSTART, DTEND, DTSTAMP, CREATED, LAST-MODIFIED, RECURRENCE-ID und DUE werden in ISO 8601 umgewandelt mit Flags für Datum, UTC und TZID-bewertete Werte.
- RRULE als Objekt – FREQ, INTERVAL, COUNT, UNTIL, BYDAY, BYMONTH und Freunde werden in ein typisiertes Objekt statt in einen einzelnen unübersichtlichen String analysiert.
- VTIMEZONE und VALARM erhalten ihre Integrität – Verknüpfte Komponenten werden als
componentsArray auf ihre Eltern-VCALENDAR oder VEVENT emittiert. - Organisatoren- und Teilnehmeradressen – mailto: Präfixe werden entfernt und in ein
emailFeld übernommen, während die ursprünglichecalAddress. - Wiederholungsvorschau – Erweitern Sie optional DAILY, WEEKLY (mit BYDAY), MONTHLY und YEARLY Regeln auf die ersten N Auftretungen, um eine schnelle Übersicht zu erhalten.
- Nur clientseitig – Die Dateien werden in Ihrem Browser analysiert. Kalendereinträge verlassen nie Ihr Gerät.
Wann wird dieses Tool verwendet?
Verwenden Sie den Converter, wenn Sie kalendärische Daten programmatisch lesen müssen – zum Beispiel bei der Untersuchung zweier .ics-Exporte, beim Laden von Ereignissen in eine Tabelle, beim Vorbereiten von Treffen für eine Chatbot-App oder beim Überprüfen, was ein exportierter Buchungsbestand tatsächlich enthält. JSON ist viel leichter zu grep, zu validieren und in ein anderes Tool zu leiten, als der rohe, zeilenfaltige iCalendar-Text.
Häufig gestellte Fragen
-
Was ist RFC 5545 und warum ist es wichtig für die Analyse von .ics-Dateien?
RFC 5545 ist die Spezifikation, die den iCalendar-Datenausprägung für Google Calendar, Apple Calendar, Outlook und die meisten Kalendernutzungsanwendungen definiert. Es legt Eigenschaftsnamen, Parameter-Syntax, Werttypen, Zeilenaufteilung bei 75 Octet, Escapings innerhalb von TEXT-Werten, Wiederholungsregeln (RRULE) und die Referenzierung von Zeitzone durch VTIMEZONE-Blöcke fest. Eine korrekte Analyse von .ics bedeutet, alle diese Aspekte zu behandeln – naive Trennungen durch Zeilenumbrüche oder Kommas verpassen verschlüsselte Sequenzen und fortgesetzte Zeilen.
-
Was ist Zeilenaufteilung in iCalendar-Inhalten?
Zeilenaufteilung ist die Regel, dass jeder Inhalt, der länger als 75 Octet ist, über mehrere physische Zeilen aufgeteilt werden muss, wobei jede Fortsetzungszeile mit einem einzigen Leerzeichen (Raum oder Tab) beginnt. Wenn Sie eine .ics-Datei lesen, müssen Sie die aufgeteilten Zeilen vor der Analyse wieder zusammenfügen – ansonsten werden lange Beschreibungen, URLs und Wiederholungsregeln mitten im Wert getrennt und die resultierenden Eigenschaften werden korrupt.
-
Wie steht VTIMEZONE in Bezug zu DTSTART und DTEND?
DTSTART und DTEND können einen TZID-Parameter tragen, der auf einen VTIMEZONE-Block in der Kalenderdatei verweist. Der VTIMEZONE-Block beschreibt die UTC-Abweichung und die Sommerzeit-Übergänge für diese benannte Zone, sodass die Uhrzeit in DTSTART auf einen genauen UTC-Moment zurückgeführt werden kann. Zeiten mit einem schließenden Z sind bereits in UTC, während Zeiten ohne TZID und ohne Z fließend sind – sie sollten in der lokalen Zeit des Lesers angezeigt werden.
-
Warum werden Komma, Semikolon und neue Zeilen innerhalb von SUMMARY und DESCRIPTION verschlüsselt?
Innerhalb eines TEXT-Werts haben die Zeichen Komma, Semikolon und Backslash sowie die direkte neue Zeile eine strukturelle Bedeutung auf der höheren Ebene: Kommas trennen Listenpunkte, Semikolons trennen Parameter und neue Zeilen beenden Inhaltszeilen. RFC 5545 §3.3.11 reserviert die Escape-Sequenzen \\, \,, \;, und \n (oder \N), damit Autoren diese Zeichen innerhalb eines Werts einfügen können. Ein Parser muss diese Escapes nach der Zeilenspaltung umkehren, nicht vorher.
-
Was ist eine RRULE und wie unterscheidet sie sich von einer Liste expliziter Datumsangaben?
RRULE kodiert ein wiederkehrendes Muster – beispielsweise FREQ=WEEKLY;BYDAY=MO,WE;COUNT=10 bedeutet zehn Auftretungen, wöchentlich am Montag und Mittwoch. Es ist eine kompakte Anweisung, die die Kalenderanwendung in einzelne Auftretungen auswertet. RDATE und EXDATE ergänzen RRULE: RDATE fügt zusätzliche explizite Datumsangaben zur Serie hinzu, und EXDATE entfernt einzelne Datumsangaben aus der Serie. Gemeinsam beschreiben sie komplexe Kalender (Feste, angesetzte Ausnahmen) in wenigen Zeilen.
Erweiterungen installieren
IO-Tools zu Ihrem Lieblingsbrowser hinzufügen für sofortigen Zugriff und schnellere Suche
恵 Die Anzeigetafel ist eingetroffen!
Anzeigetafel ist eine unterhaltsame Möglichkeit, Ihre Spiele zu verfolgen. Alle Daten werden in Ihrem Browser gespeichert. Weitere Funktionen folgen in Kürze!
Unverzichtbare Tools
Alle Neuheiten
AlleAktualisieren: Unser neuestes Werkzeug was added on Juni 22, 2026
