مُحَوّل iCalendar (ICS) إلى JSON
مرشد
مُحَوّل iCalendar (ICS) إلى JSON
مُحَوِّل iCalendar (ICS) إلى JSON يُحلّل محتوى التقويم وفقًا لمواصفات RFC 5545 إلى JSON مُهيكل يمكن قراءته أو التحويل أو استخدامه في برنامج آخر. الصق محتوى ملف .ics مُستخرج من تقويم Google أو Apple أو Outlook إلى مربع الإدخال، وسَيُفكك السطور الطويلة، وسَيُفكك القيم النصية، وسَيُفصل المعلمات من القيم، وسَيُحلّل DTSTART وDTEND إلى صيغة ISO 8601، وسَيُحوّل RRULE إلى كائن مُهيكل — كل ذلك في المتصفح. لا يتم رفع أي شيء إلى خادم.
كيفية استخدام
- أدخل محتوى ملف .ics إلى مربع الإدخال، أو اسحب الملف إلى مُقدّم التحميل.
- اختر خيارات الناتج: عرض مُنظّم، مصفوفة مُبسطة من الحدث، تحليل تواريخ ISO 8601، أو تضمين القيم الأصلية مع القيم المُحلّلة.
- بمُجرد الطلب، يمكن تفعيل عرض RRULE لرؤية أول N من المُكرر في أي حدث متكرر.
- يمكن نسخ الناتج JSON أو تنزيله كـ
calendar.json.
خصائص
- إعادة تشكيل متوافق مع RFC 5545 – يُعيد تجميع السطور المُتسلسلة التي تبدأ بمسافات فارغة قبل التحليل، بحيث تُعاد بناء القيم الصحيحة لـ DESCRIPTION وURL.
- يُحتفظ بالمعلمات الخاصة – المعلمات مثل TZID، CN، RSVP، VALUE وجميع المعلمات X تُوضع في كائن مُهيكل بجانب القيمة.
paramsمُحلّل التواريخ - – يتم تحويل DTSTART، DTEND، DTSTAMP، CREATED، LAST-MODIFIED، RECURRENCE-ID و DUE إلى صيغة ISO 8601 مع علامات للتواريخ فقط، والوقت العالمي، والقيمة المرتبطة بمنطقة زمنية. RRULE ككائن
- – يتم تحليل المعلمات مثل FREQ، INTERVAL، COUNT، UNTIL، BYDAY، وذوي الصلة إلى كائن مُهيكل بدلًا من سلسلة مُجردة. يُحتفظ بـ VTIMEZONE وVALARM كما هي
- – يتم إصدار المكونات المُتداخلة كمصفوفة على والد VCALENDAR أو VEVENT. عناوين المُنظّم والمشاركين
components– يتم إزالة مُقدّم mailto: إلى حقل، مع الحفاظ على القيمة الأصلية. - عرض التكرار – يمكن توسيع القواعد اليومية، الأسبوعية (مع BYDAY)، الشهرية والسنوية إلى أول N من المُكرر لتسهيل التحقق البصري.
email– يتم تحليل الملفات في المتصفح. لا تغادر محتويات التقويم جهازك.calAddress. - استخدم المُحَوِّل عند الحاجة لقراءة بيانات التقويم بشكل برمجي — مقارنة بين مُستخرجين من ملفين .ics، تحميل الحدث إلى جدول، تجهيز اجتماعات لروبوتات الدردشة، أو مراجعة ما يحتويه تقويم مُستخرج من حجز. يكون JSON أسهل في البحث، التحقق، وتحويله إلى أداة أخرى مقارنة بالنص المُتسلسل المُتَّسِع من iCalendar. ما هو RFC 5545 وما السبب في أهميته عند تحليل ملفات .ics؟
- من جانب العميل فقط RFC 5545 هو المواصفة التي تُعرّف صيغة بيانات iCalendar التي تُستخدم في تقويم Google، Apple، Outlook، وغالبية تطبيقات التقويم. تُعرّف فيها أسماء الخصائص، ونظام المعلمات، ونوع القيم، وقواعد تجزئة السطور عند 75 بايت، وطرق تسلسل النصوص داخل القيم النصية، وقواعد التكرار (RRULE)، وطريقة إشارة المناطق الزمنية من خلال مُتّسِعات VTIMEZONE. التحليل الصحيح لملف .ics يعني التعامل مع كل ذلك — التجزئة البسيطة على الأسطر أو الحروف تُفقد التسلسلات المُختَلَفة والانقطاعات المُتسلسلة.
متى تستخدم هذا الأداة؟
ما هو تجزئة السطر في محتوى iCalendar؟
التعليمات
-
تُعرف تجزئة السطر بأن أي سطر يتجاوز 75 بايت يجب أن يُقسَّم على عدة أسطر، مع أن كل سطر تالي يبدأ بمسافة فارغة (مُسافات أو تباعد). عند قراءة ملف .ics يجب إعادة تجميع السطور المُتسلسلة قبل التحليل — وإلا فإن الوصف الطويل، أو الروابط، أو قواعد التكرار ستُقسَّم في منتصف القيمة، مما يؤدي إلى تلف الخصائص الناتجة.
كيف ترتبط VTIMEZONE بـ DTSTART وDTEND؟
-
يمكن أن تُحمل معلمات DTSTART وDTEND مُعلّمة TZID تشير إلى مُتّسِع VTIMEZONE المُعرّف في مكان آخر في التقويم. يُعرّف مُتّسِع VTIMEZONE التحوّل من الـ UTC وانتقالات التوقيت المُتَّسِع للمنطقة المُحددة، لذا يمكن تحويل الوقت المكتوب في DTSTART إلى لحظة دقيقة في الـ UTC. الأوقات التي تنتهي بـ Z تُعتبر بالفعل في الـ UTC، بينما الأوقات بدون TZID أو بدون Z تُعتبر مُتَّسِعة — يجب عرضها في الوقت المحلي الذي يُستخدمه القارئ.
لماذا تُستخدم علامات الفاصلة، الفاصلة، والسطر في وصف SUMMARY وDESCRIPTION؟
-
داخل القيمة النصية، تُستخدم الأحرف الفاصلة، الفاصلة، والخلفية، بالإضافة إلى الأسطر المُباشرة، كمُستندات لها معنى على المستوى الأعلى: الفاصلة تُستخدم لفصل العناصر، الفاصلة تُستخدم لفصل المعلمات، والأسطر تُنهي سلسلة المحتوى. تُحتفظ المواصفة RFC 5545 §3.3.11 بسلسلة الفتح \\، \,, \;, و \n (أو \N) بحيث يمكن للمؤلفين إدراج هذه الأحرف داخل القيمة. يجب على المُحلّل إلغاء هذه التسلسلات بعد تجزئة السطر، وليس قبل ذلك.
ما هو RRULE وما الفرق بينه وبين قائمة من الأوقات المحددة؟
-
يُعدّ RRULE ترميزًا لنموذج تكرار — على سبيل المثال FREQ=WEEKLY;BYDAY=MO,WE;COUNT=10 يعني عشرة مرات، كل أسبوع في يوم الاثنين والثلاثاء. هو تعليمات مختصرة يُوسعها تطبيق التقويم إلى مرات متعددة. تُكمل RDATE وEXDATE قاعدة RRULE: تضيف RDATE أوقات محددة إضافية إلى السلسلة، وتُزيل أوقات محددة منها. معًا، تصف التقويمات المعقدة (المناسبات، الاستثناءات المرتبطة) في عدد قليل من السطور.
مُحَوِّل iCalendar (ICS) إلى JSON 1
-
مُحَوِّل iCalendar (ICS) إلى JSON
مُحَوِّل iCalendar (ICS) إلى JSON يُحلّل محتوى التقويم وفقًا لمواصفات RFC 5545 إلى JSON مُهيكل يمكن قراءته أو التحويل أو استخدامه في برنامج آخر. الصق محتوى ملف
تثبيت ملحقاتنا
أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع
恵 وصلت لوحة النتائج!
لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!
