Konverter online gratis ICS ke XML
Konversi acara kalender dari ICS ke XML atau xCal terstandarisasi.
Konversi ICS ke XML online - gratis
File Anda diproses secara instan dan dihapus segera setelah Anda mengunduhnya.
Impor file dari URL
Tempel tautan langsung ke file. Kami mengunduhnya ke server kami dan mengonversinya persis seperti file yang diunggah.
Cara kerjanya
-
1/3
Unggah file .ics Anda
Klik untuk memilih file yang ingin Anda konversi, atau cukup seret dan lepas file ke area yang ditentukan.
-
2/3
Jalankan konversi .ics ke .xml
Setelah file berhasil diunggah, klik konversi saat Anda siap.
-
3/3
Unduh file .xml hasil konversi
Hasil konversi siap untuk diunduh.
Bagaimana mengkonversi ics ke xml berkas
- Kontak dan buku alamat
- Belum ada peringkat.
Aplikasi kalender atau platform integrasi mungkin memerlukan XML, bukan file iCalendar, untuk mengimpor, melakukan kueri, mengarsipkan, atau bertukar data event. Konversi harus menerjemahkan properti kalender ke dalam kosakata XML; mengubah ekstensi .ics tidak mengonversi file.
Apa itu format ICS
ICS adalah ekstensi nama file yang umum digunakan untuk data iCalendar, dengan sintaks inti yang ditentukan oleh RFC 5545. Ini adalah format teks yang mendukung UTF-8 dengan komponen seperti event VEVENT, tugas VTODO, dan entri VJOURNAL. Properti umum mencakup UID, DTSTART, DTEND, SUMMARY, LOCATION, peserta, aturan pengulangan, alarm, dan definisi zona waktu.
Microsoft Outlook, Apple Calendar, Google Calendar, Mozilla Thunderbird, dan banyak sistem penjadwalan dapat membuat atau mengimpor file ICS. File ini umum digunakan untuk undangan event, ekspor kalender, pemindahan janji temu, dan lampiran rapat. ICS adalah data kalender, bukan format kontak atau CAD.
Apa itu format XML
XML adalah format teks hierarkis yang merepresentasikan data terstruktur dengan elemen, atribut, namespace, dan definisi skema opsional. XML mendukung validasi dengan XSD, kueri dengan XPath, dan transformasi dengan XSLT, sehingga sesuai untuk sistem yang memerlukan struktur pertukaran atau pengarsipan yang ditentukan.
XML tidak memiliki kosakata kalender bawaan yang universal. Aplikasi penerima harus menentukan nama elemen, namespace, field yang wajib diisi, dan tipe data. xCal, yang ditentukan oleh RFC 6321, adalah representasi XML standar untuk data iCalendar; gunakan xCal jika sistem target mendukungnya. Jika tidak, petakan properti ICS ke skema XML khusus milik penerima.
Cara mengonversi file ICS ke XML
Untuk konversi satu kali, gunakan converter di 101convert.com: upload file .ics, pilih XML sebagai format output, mulai konversi, lalu download file .xml yang dihasilkan. Periksa struktur elemen yang dibuat berdasarkan persyaratan aplikasi pengimpor. Jangan upload kalender yang berisi informasi rahasia kecuali ketentuan penanganan dan penyimpanan layanan tersebut dapat diterima.
Untuk konversi berulang atau file yang memerlukan pemetaan field terkendali, gunakan parser, bukan regular expressions. Package icalendar untuk Python dapat mem-parsing baris terlipat, teks yang di-escape, tanggal, zona waktu, dan komponen kalender; module xml.etree.ElementTree dari standard library dapat menulis XML.
- Instal parser dengan
python -m pip install icalendar. - Baca file ICS dalam binary mode dan parse dengan
Calendar.from_ical(). - Iterasikan komponen yang diperlukan dan petakan setiap properti sumber ke skema XML target.
- Serialisasikan tanggal dan date-time secara cermat, pertahankan informasi zona waktu, lalu tulis XML UTF-8 dengan deklarasi XML.
- Validasi hasil terhadap XSD milik penerima, atau buat struktur xCal RFC 6321 jika itu adalah format yang diperlukan.
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
)Script ini membuat kosakata XML khusus yang kecil, bukan xCal. Perluas pemetaan untuk peserta, penyelenggara, alarm, lampiran, aturan pengulangan, RECURRENCE-ID, EXDATE, dan properti lainnya, atau ganti nama elemen dan namespace dengan yang diwajibkan oleh skema target.
Pemeriksaan kualitas dan kompatibilitas
Mengubah nama calendar.ics menjadi calendar.xml membuat sintaks internal iCalendar tetap sama dan tidak menghasilkan XML yang valid.
Penanganan waktu memerlukan perhatian khusus. Pertahankan nilai TZID, offset UTC, waktu floating, dan aturan daylight-saving. Mengonversi waktu lokal menjadi string tanpa informasi zona waktu dapat menggeser janji temu ketika sistem lain menafsirkannya dalam zona waktu yang berbeda. Pertahankan aturan pengulangan dan pengecualiannya, termasuk RECURRENCE-ID dan EXDATE.
Setelah konversi, verifikasi event berulang, event sepanjang hari, alarm, peserta, data penyelenggara, lampiran, teks non-ASCII, dan event yang dibatalkan. Parser iCalendar harus mendekode baris terlipat dan nilai yang di-escape seperti \,, \;, dan \n; penggantian string dasar dapat merusak batas field atau teks.
ICS vs XML: perbandingan format
Bagaimana format ICS dan XML dibandingkan pada properti yang paling penting untuk konversi ini.
| Properti | .ICS vCalendar/iCalendar file | .XML Extensible Markup Language |
|---|---|---|
| Dapat dibaca teks biasa | Ya | Ya |
| Tipe data | Bertipe | Bertipe |
| Struktur bertingkat | Ya | Ya |
| Rumus | Tidak | Tidak |
| Beberapa tabel atau sheet | Tidak | — |
| Ukuran file umum | Kecil | Kecil |
| Standar terbuka | Ya | Ya |
| Paling cocok untuk | Berbagi dan distribusi | Pertukaran data |
| Diperkenalkan | 1998 | 1998 |
| Pengembang | Internet Engineering Task Force (IETF) | W3C |
| Tipe MIME | text/calendar | application/xml |
Basis data saat ini tidak berisi ics file converter.
Pertanyaan yang sering diajukan
Apakah konverter ICS ke XML gratis?
Ya, mengonversi ICS ke XML di 101convert.com sepenuhnya gratis. Tidak perlu registrasi, alamat email, atau instalasi. Jika Anda membutuhkan batas ukuran file yang lebih besar atau ingin mengonversi lebih banyak file sekaligus, lihat paket kami.
Seberapa besar file ICS yang bisa saya unggah?
Anda dapat mengunggah file ICS hingga 15 MB dan mengonversi hingga 100 file sekaligus dalam satu batch.
Apa yang terjadi pada file yang saya unggah?
File diproses secara otomatis dan dihapus dari server kami beberapa menit setelah konversi. Kami tidak pernah melihat atau membagikan file Anda.
Apakah saya perlu menginstal perangkat lunak untuk mengonversi ICS ke XML?
Tidak. Konversi ICS ke XML berjalan sepenuhnya online di browser dan berfungsi di Windows, Mac, Linux, Android, dan iPhone.
Konversi gagal?
Dalam sebagian besar kasus, penyebabnya adalah format file yang tidak sesuai. Unggah file ICS yang valid untuk konversi ICS ke XML ini. Terkadang masalah juga dapat terjadi di pihak kami. Kami menganalisis kegagalan konversi yang berulang dan menonaktifkan atau memperbaiki konverter jika menemukan kerusakan.