محول TOML إلى JSON

تحويل ملفات تكوين TOML إلى JSON - يدعم الجداول، ومصفوفات الجداول، وجميع أنواع بيانات TOML

مشاركة:

محول TOML إلى JSON


                    

لماذا التحويل بين TOML و JSON؟

تم تصميم TOML ليكون تنسيقاً سهل القراءة للبشر في ملفات التكوين (مثل Cargo.toml في Rust، و pyproject.toml في Python، و config.toml في Hugo)، بينما يعد JSON المعيار الأساسي لواجهات برمجة تطبيقات الويب (Web APIs) وأدوات JavaScript. عندما تحتاج إلى تمرير تكوينات TOML إلى واجهة برمجة تطبيقات JSON، أو دمجه مع أدوات JavaScript، أو مشاركة البيانات بين بيئات برمجية مختلفة، فإن هذا المحول يسد الفجوة فوراً.

🔤

تحويل كامل لجميع الأنواع

يتم تحويل نصوص TOML، والأرقام الصحيحة، والأرقام العشرية، والقيم المنطقية، والتاريخ والوقت بشكل صحيح إلى ما يعادلها في JSON.

📋

الجداول ومصفوفات الجداول

يتعامل بشكل صحيح مع صياغة [table] و [[array of tables]] والجداول المضمنة {key = val}.

مخرجات JSON منسقة

يتم إخراج النتائج بتنسيق 'pretty-printed' مع مسافات بادئة لسهولة القراءة - وليس كـ JSON مضغوط في سطر واحد.

كيفية تحويل TOML إلى JSON

1

لصق إعدادات TOML

قم بلصق محتوى ملفات Cargo.toml أو pyproject.toml أو أي ملف تكوين بتنسيق TOML.

2

تحويل تلقائي

تقوم الأداة فوراً بتحليل وتحويل هيكل TOML إلى ما يعادله في تنسيق JSON.

3

نسخ JSON

انسخ كود JSON المولد واستخدمه في طلبات API أو أي أدوات أخرى تقبل مدخلات JSON.

حالات استخدام TOML إلى JSON

🦀

تحليل Cargo.toml

تحويل ملفات Cargo.toml إلى JSON لنصوص CI البرمجية التي تحلل التبعيات أو تستخرج معلومات الإصدار.

📝

إعدادات موقع Hugo

تحويل ملفات config.toml الخاصة بـ Hugo إلى JSON لدمجها مع أدوات أو مصادر بيانات أخرى.

🔌

تمرير بيانات API

تحويل الإعدادات بتنسيق TOML إلى JSON لتمريرها إلى واجهات REST APIs أو نقاط نهاية GraphQL.

🔍

تعلم التنسيقات

فهم كيفية رسم خرائط الهيكلية بين TOML و JSON لتعلم كيفية ارتباط التنسيقين ببعضهما البعض.

أفضل ممارسات TOML

✓ استخدم تدوين النقطة للجداول المتداخلة

يدعم TOML صياغة [server.database] كاختصار للجداول المتداخلة، مما يجعل الإعدادات أكثر حداثة وقراءة من JSON المتداخل.

✓ استخدم النصوص الحرفية (Literal Strings) للمسارات

النصوص الحرفية بعلامة اقتباس مفردة مثل 'C:\Users\path' لا تعالج تسلسلات الهروب - وهي مثالية لمسارات ملفات Windows وأنماط regex.

✓ استخدم التعليقات بكثرة

أكبر ميزة لـ TOML على JSON هي دعم التعليقات. قم بتوثيق كل خيار تكوين باستخدام تعليقات # لسهولة الصيانة.

✓ انتبه لتحويل نوع التاريخ والوقت

التاريخ والوقت الأصلي في TOML (RFC 3339) يتحول إلى نص في JSON. ستحتاج الأكواد التي تستهلك JSON إلى إعادة تحويله لكائن تاريخ.

❓ الأسئلة الشائعة

ما هي مزايا TOML مقارنة بـ YAML و JSON؟

TOML أبسط من YAML (لا تعتمد هيكليته على المسافات البادئة)، وأكثر قابلية للقراءة من JSON (يدعم التعليقات)، وله أنواع صريحة (الأرقام، والكسور، والتواريخ). هو الخيار الأفضل لملفات تكوين التطبيقات.

ما هي [[array of tables]] في TOML؟

تعرف [[servers]] مصفوفة من الكائنات تسمى 'servers'. في كل مرة يظهر فيها [[servers]]، يتم إنشاء كائن جديد في المصفوفة. هو ما يعادل [{}, {}] في JSON.

ما هي الأدوات الرئيسية التي تستخدم TOML؟

تستخدمه لغة Rust (Cargo.toml)، وبايثون (pyproject.toml)، ومولد المواقع Hugo، وأدوات Go والـ DevOps الكثيرة. استخدامه ينمو بسرعة في الأنظمة التقنية المعاصرة.

هل يتم الاحتفاظ بتعليقات TOML في مخرجات JSON؟

لا. لا يحتوي JSON على صياغة للتعليقات، لذا تعليقات # في TOML لا يمكن تمثيلها في JSON. إذا كانت التعليقات توثق قرارات هامة، ففكر في حفظها بملف README منفصل.