ICS (.ics, .ical, .ifb)

Background & Context

    • MIME types: text/calendar
    • ICS iCalendar format.
    • Used for the storage and exchange of calendar information.
    • Commonly used in personal information management systems.
    • Plain text format.
    • Stores multiple events, tasks, and journal entries in a single file.
    • Described in internet standard recommendation RFC 5545.
    • Developed in 1998.


  • Import["file.ics"] imports all events from an ICS file.
  • Import["file.ics"] gives a list of rules for each event stored in the file.
  • Import["file.ics",elem] imports the specified element from an ICS file.
  • Import["file.ics",{elem,sub,}] imports a subelement.
  • Import["file.ics",{{elem1,elem2,}}] imports multiple elements.
  • The import format can be specified with Import["file","ICS"] or Import["file",{"ICS",elem,}].
  • See the following reference pages for full general information:
  • Importimport from a file
    CloudImportimport from a cloud object
    ImportStringimport from a string
    ImportByteArrayimport from a byte array

Import Elements

  • General Import elements:
  • "Elements" list of elements and options available in this file
    "Summary"summary of the file
    "Rules"list of rules for all available elements
  • Data representation elements:
  • "Availability"free/busy information, given as lists of rules
    "Events"event data, given as lists of rules
    "JournalEntries"journal entries, given as lists of rules
    "Tasks"task data, given as lists of rules
    "TimeZones"time zones, represented as lists of rules
  • Import uses the "Events" element by default.
  • Import["file.ics"] reads all events and returns them as a list of lists of rules.
  • Meta-information elements:
  • "CalendarSystem"calendar system used in this file
    "Creator"application that created this file


  • Import options:
  • "EmptyField"Automatichow missing information is represented


open allclose all

Basic Examples  (4)

Import the first event from an ICS file:

Import a journal entry:

Import all tasks from an ICS file:

Import time zone data:

Scope  (1)

Import all event summaries and start dates, and display them in table form: