Converti ics in xml

Convertitore online gratuito da ICS a XML

Converti gli eventi del calendario da ICS a XML o xCal standardizzato.

Converti ICS in XML online - gratuito

Uploading…
I file selezionati superano il limite totale di 15 MB. Seleziona file meno numerosi o più piccoli.

Il tuo file viene elaborato istantaneamente ed eliminato non appena lo scarichi.

Come funziona

  1. 1/3

    Carica il tuo file .ics

    Fai clic per selezionare il file che vuoi convertire oppure trascinalo semplicemente nell'area indicata.

  2. 2/3

    Avvia la conversione da .ics a .xml

    Dopo il caricamento del file, fai clic su converti quando sei pronto.

  3. 3/3

    Scarica il file .xml convertito

    Il risultato della conversione è pronto per il download.

Come convertire ics in xml file

Un'applicazione di calendario o una piattaforma di integrazione può richiedere XML invece di un file iCalendar per importare, interrogare, archiviare o scambiare dati di eventi. La conversione deve tradurre le proprietà del calendario in un vocabolario XML; modificare l'estensione .ics non converte il file.

Che cos'è il formato ICS

ICS è l'estensione del nome file comunemente utilizzata per i dati iCalendar, la cui sintassi principale è definita dalla RFC 5545. È un formato di testo compatibile con UTF-8, con componenti quali eventi VEVENT, attività VTODO e voci VJOURNAL. Le proprietà comuni includono UID, DTSTART, DTEND, SUMMARY, LOCATION, partecipanti, regole di ricorrenza, allarmi e definizioni dei fusi orari.

Microsoft Outlook, Apple Calendar, Google Calendar, Mozilla Thunderbird e molti sistemi di pianificazione creano o importano file ICS. Sono comunemente utilizzati per inviti a eventi, esportazioni di calendari, trasferimenti di appuntamenti e allegati di riunioni. ICS contiene dati di calendario, non è un formato per contatti o CAD.

Che cos'è il formato XML

XML è un formato di testo gerarchico che rappresenta dati strutturati con elementi, attributi, namespace e definizioni di schema facoltative. XML supporta la convalida con XSD, le query con XPath e la trasformazione con XSLT, risultando adatto ai sistemi che richiedono una struttura di interscambio o archiviazione definita.

XML non dispone di un vocabolario di calendario universale integrato. L'applicazione ricevente deve specificare i nomi degli elementi, i namespace, i campi obbligatori e i tipi di dati. xCal, definito dalla RFC 6321, è la rappresentazione XML standardizzata dei dati iCalendar; utilizzalo quando il sistema di destinazione supporta xCal. In caso contrario, associa le proprietà ICS allo schema XML personalizzato del destinatario.

Come convertire un file ICS in XML

Per una conversione occasionale, utilizza il convertitore su 101convert.com: carica il file .ics, scegli XML come formato di output, avvia la conversione e scarica il file .xml risultante. Verifica la struttura degli elementi generata rispetto ai requisiti dell'applicazione che esegue l'importazione. Non caricare calendari contenenti informazioni riservate, a meno che le condizioni di gestione e conservazione del servizio non siano accettabili.

Per conversioni ripetibili o file che richiedono un'associazione controllata dei campi, utilizza un parser anziché espressioni regolari. Il package icalendar di Python analizza righe ripiegate, testo con caratteri di escape, date, fusi orari e componenti del calendario; il modulo xml.etree.ElementTree della standard library scrive XML.

  1. Installa il parser con python -m pip install icalendar.
  2. Leggi il file ICS in modalità binaria e analizzalo con Calendar.from_ical().
  3. Scorri i componenti richiesti e associa ogni proprietà di origine allo schema XML di destinazione.
  4. Serializza date e data-ora in modo esplicito, conserva le informazioni sul fuso orario e scrivi XML UTF-8 con una dichiarazione XML.
  5. Convalida il risultato rispetto all'XSD del destinatario oppure genera la struttura xCal della RFC 6321 se questo è il formato richiesto.
from icalendar import Calendar
import xml.etree.ElementTree as ET

with open("calendar.ics", "rb") as source:
    calendar = Calendar.from_ical(source.read())

root = ET.Element("calendar")
for component in calendar.walk("VEVENT"):
    event = ET.SubElement(root, "event")
    for source_name, target_name in (
        ("UID", "uid"), ("SUMMARY", "summary"),
        ("DTSTART", "start"), ("DTEND", "end"),
        ("LOCATION", "location"), ("DESCRIPTION", "description")
    ):
        value = component.get(source_name)
        if value is None:
            continue
        data = getattr(value, "dt", value)
        element = ET.SubElement(event, target_name)
        element.text = data.isoformat() if hasattr(data, "isoformat") else str(data)

ET.ElementTree(root).write(
    "calendar.xml", encoding="utf-8", xml_declaration=True
)

Questo script crea un piccolo vocabolario XML personalizzato, non xCal. Estendi l'associazione per partecipanti, organizzatori, allarmi, allegati, regole di ricorrenza, RECURRENCE-ID, EXDATE e altre proprietà, oppure sostituisci i nomi degli elementi e i namespace con quelli richiesti dallo schema di destinazione.

Controlli di qualità e compatibilità

Rinominare calendar.ics in calendar.xml lascia invariata la sintassi iCalendar interna e non produce XML valido.

La gestione dell'ora richiede particolare attenzione. Conserva i valori TZID, gli offset UTC, gli orari senza fuso e le regole dell'ora legale. Convertire un'ora locale in una semplice stringa può spostare gli appuntamenti quando un altro sistema la interpreta in un fuso orario diverso. Conserva le regole di ricorrenza e le relative eccezioni, inclusi RECURRENCE-ID e EXDATE.

Dopo la conversione, verifica gli eventi ricorrenti, gli eventi di un'intera giornata, gli allarmi, i partecipanti, i dati dell'organizzatore, gli allegati, il testo non ASCII e gli eventi annullati. Un parser iCalendar deve decodificare le righe ripiegate e i valori con caratteri di escape come \,, \; e \n; una semplice sostituzione di stringhe può danneggiare i confini dei campi o il testo.

Confronto formato: ICS vs XML

Come i formati ICS e XML si confrontano sulle proprietà più importanti per questa conversione.

Confronto dei formati ICS e XML
Proprietà .ICS vCalendar/iCalendar file .XML Extensible Markup Language
Leggibile come testo semplice Sì Sì
Tipi di dati Tipizzato Tipizzato
Strutture nidificate Sì Sì
Formule No No
Più tabelle o fogli No —
Dimensione tipica del file Piccolo Piccolo
Standard aperto Sì Sì
Ideale per Condivisione e distribuzione Scambio dati
Introdotto 1998 1998
Sviluppatore Internet Engineering Task Force (IETF) W3C
Tipo MIME text/calendar application/xml

Il database attualmente non contiene alcun convertitore di file ics.

Domande frequenti

Il convertitore da ICS a XML è gratuito?

Sì, convertire ICS in XML su 101convert.com è completamente gratuito. Non sono richiesti registrazione, e-mail o installazione. Se hai bisogno di un limite di dimensione del file più alto o vuoi convertire più file alla volta, consulta i nostri piani.

Quanto può essere grande il mio file ICS?

Puoi caricare file ICS fino a 15 MB e convertire fino a 100 file alla volta in un unico lotto.

Cosa succede ai file caricati?

I file vengono elaborati automaticamente ed eliminati dai nostri server pochi minuti dopo la conversione. Non visualizziamo né condividiamo mai i tuoi file.

Devo installare un software per convertire ICS in XML?

No. La conversione da ICS a XML avviene completamente online nel browser e funziona su Windows, Mac, Linux, Android e iPhone.

La conversione non è riuscita?

Nella maggior parte dei casi, la causa è un formato di file errato. Carica un file ICS valido per questa conversione da ICS a XML. A volte il problema può dipendere anche da noi. Analizziamo gli errori di conversione ricorrenti e disattiviamo o ripariamo il convertitore se rileviamo un difetto.

Altre conversioni di file .ics

Conversione inversa

Conversione in .xml
da altri formati

Condividi sui social media: