كيفية تحويل تحويل JSON إلى YAML
- 01أضف ملفات JSONاختر الملفات أو أفلتها على الصفحة.
- 02التحويل على جهازكلا يُرفع أي شيء. عدّل الإعدادات إن أردت.
- 03تنزيلاحفظ كل ملف على حدة، أو كلها في ملف ZIP واحد.

ما هو JSON؟
صيغة البيانات في واجهات API والتطبيقات. كائنات وقوائم، متداخلة في الغالب.
حوّل JSON إلى YAML لتحصل على ملف يستطيع الناس قراءته وتعديله يدويًا: ملف Kubernetes، أو ملف Docker Compose أو GitHub Actions، أو ملف متغيرات Ansible، أو مواصفات OpenAPI. تبقى البنية وكل قيمة كما هي؛ لا يتغير إلا أسلوب الكتابة، ويجري التحويل في متصفحك.
من JSON إلى YAML: قبل وبعد
المُدخل: {"service": {"name": "web", "ports": [80, 443], "env": {"DEBUG": false}}}. الناتج: سطر service:، ثم name: web، ثم ports: يليه - 80 و- 443 عنصرين في قائمة، ثم env: وتحته DEBUG: false، وكل مستوى مُزاح بمسافتين.
تختفي الأقواس المعقوفة والمربعة والفواصل ومعظم علامات التنصيص. تصبح قائمة الكائنات قائمة يبدأ كل عنصر فيها بشرطة، فتتحول مصفوفة containers إلى - name: app يليها image: nginx مصطفًّا تحتها.
لماذا توضع بعض النصوص بين علامات تنصيص
بعض القيم نصوص في JSON، لكنها ستعني شيئًا آخر لو كُتبت مجردة في YAML. لذا يضعها المحوّل بين علامتي تنصيص مفردتين حتى تُقرأ بعد ذلك على أنها النصوص نفسها:
- كلمات قد يعدّها قارئ YAML قيمًا منطقية: "yes" و"no" و"on" و"off" و"true"، وحتى المفاتيح المكونة من حرف واحد مثل y وn، التي تعاملها قارئات YAML 1.1 القديمة على أنها قيم منطقية.
- النصوص التي تشبه الأرقام أو التواريخ، مثل "123" أو "1.10" أو "2024-01-15".
- النصوص التي تبدأ بـ # أو تحتوي على نقطتين رأسيتين تليهما مسافة، إذ كانت ستبدأ تعليقًا أو مفتاحًا جديدًا لولا ذلك.
- النصوص الفارغة، وتُكتب ''.
النصوص الطويلة ومتعددة الأسطر
تبقى النصوص الطويلة في سطر واحد. لا تُطوى عند عرض ثابت، فتخرج الروابط والمفاتيح والأوامر الطويلة كما كانت تمامًا.
النص الذي يحتوي على فواصل أسطر يصبح كتلة حرفية تبدأ بـ |، مع الإبقاء على كل فاصل سطر كما كان. هذا أسهل قراءة بكثير من رموز \n، وهو الطريقة المعتادة لتخزين السكربتات المضمّنة أو الشهادات أو الأوصاف الطويلة في YAML.
ما الذي يبقى كما هو
- تحتفظ الأرقام وtrue وfalse وnull بأنواعها. وتُكتب null بالشكل null.
- تحتفظ المفاتيح بالترتيب الذي كانت عليه في JSON، باستثناء المفاتيح التي هي أرقام مجردة، إذ تضعها JavaScript دائمًا في البداية.
- تُكتب الكائنات والقوائم الفارغة بالشكل {} و[].
- لا تُضاف علامة مستند --- ولا تعليقات ولا مراسٍ. والإزاحة دائمًا مسافتان، وهو الأسلوب الأكثر شيوعًا في ملفات الإعدادات؛ وليس في الصفحة إعدادات لتغييرها.
المشكلات والأدوات ذات الصلة
يُرفض JSON غير الصالح مع ذكر السطر والعمود اللذين فيهما المشكلة، وغالبًا ما تكون فاصلة زائدة في النهاية أو علامة تنصيص ناقصة. وتمرير YAML عبر أداة YAML إلى JSON يعيد البيانات نفسها، وهي طريقة سريعة للتحقق من التحويل ذهابًا وإيابًا. للبيانات الموسومة بدلًا من ملفات الإعدادات، استخدم JSON إلى XML.
نظرة سريعة
- السعر
- مجاني. بلا تسجيل وبلا علامة مائية.
- الخصوصية
- تُعالَج الملفات في متصفحك ولا تُرفع أبدًا.
- يقبل
- JSON
- ستحصل على
- YAML
- دفعة
- حوّل ملفات كثيرة دفعة واحدة ونزّلها في ملف ZIP
- يعمل على
- Chrome وEdge وFirefox وSafari، على الهواتف والحواسيب
- دون اتصال
- بعد أول تحويل، يواصل العمل دون إنترنت
الأسئلة
هل تُرفع ملفاتي؟
أبدًا. يجري تحويل JSON إلى YAML داخل متصفحك، فتبقى ملفاتك على جهازك.
هل يمكنني تحويل عدة ملفات دفعة واحدة؟
نعم. أضف ما تشاء من الملفات ونزّلها كلها في ملف ZIP واحد.
هل يوجد حد لحجم الملف؟
الملفات التي تبلغ عشرات الميغابايت لا مشكلة فيها على معظم أجهزة الكمبيوتر.
لماذا توجد بعض القيم بين علامتي تنصيص مفردتين؟
إنها نصوص كانت ستُقرأ لولا ذلك على أنها قيمة منطقية أو رقم أو تاريخ أو تعليق. تحافظ علامات التنصيص عليها نصوصًا كما هي.
هل يمكنني اختيار إزاحة بأربع مسافات؟
لا. يستخدم الناتج دائمًا مسافتين. ومعظم محرّرات الكود تستطيع إعادة إزاحة ملف YAML إن كان مشروعك يستخدم أربع مسافات.
هل سيتحول YAML مرة أخرى إلى JSON نفسه؟
نعم. تُحفظ البنية والأنواع والقيم، لذا تعيد أداة YAML إلى JSON البيانات نفسها. قد تختلف المسافات فقط.