تحويل YAML إلى JSON
حوّل ملفات إعداد YAML ومواصفات OpenAPI وملفات CI إلى JSON يقرؤه أي محلل أو واجهة برمجية أو أداة تحقق من المخطط. ارفع ملفات .yaml أو .yml ونزّل JSON بمسافات بادئة.
محوّل البيانات
أو أفلت ملفات CSV, TSV, TXT … هنا ·
الحد الأقصى 95 MB لكل ملف· حتى 20 ملفًا· تُحذف بعد 30 دقيقة
تُعالج الملفات على خوادمنا وتُحذف بعد 30 دقيقة.
الحرف الذي يفصل الأعمدة في ملفات CSV والنصوص، للقراءة والكتابة معًا. الاكتشاف التلقائي يحدده من المدخلات ويكتب الفواصل.
يعمل UTF-8 مع جميع اللغات. اختر UTF-8 with BOM إذا عرض Excel على Windows الحروف المشكولة أو الآسيوية بشكل مشوّه عند فتح ملف CSV.
لمدخلات Excel وODS وNumbers: حوّل الورقة الأولى فقط أو كل الأوراق (ملف CSV لكل ورقة داخل ZIP، أو مفتاح JSON لكل ورقة).
اسم تبويب الورقة في جدول البيانات الجديد، بحد أقصى 31 حرفًا.
مصفوفة كائنات تستخدم أسماء الأعمدة مفاتيح لكل صف؛ ومصفوفة مصفوفات أكثر إحكامًا وتُبقي الترويسة كأول مصفوفة.
اسم العنصر الخارجي الذي يضم كل الصفوف؛ ويصبح كل صف عنصر <row> داخله.
يُستخدم في عبارتي CREATE TABLE وINSERT. حروف وأرقام وشرطات سفلية فقط.
يختلف اقتباس الأسماء وأنواع الأعمدة قليلًا بين قواعد البيانات؛ اختر القاعدة التي ستستورد إليها.
أعد كتابة خلايا التاريخ بصيغة واحدة. صيغة ISO (2026-10-18) هي الأكثر أمانًا لقواعد البيانات والبرمجة؛ وخيار الإبقاء يتركها كما وردت في المصدر.
طريقة استخدام هذه الأداة
- 1
ارفع ملفات YAML
أضف ملفات .yaml أو .yml، حتى 20 ملفًا دفعة واحدة وبحجم أقصاه 95 MB لكل ملف. أبقِ الأسماء الأصلية؛ ستحمل ملفات JSON الأسماء نفسها بامتداد جديد.
- 2
اختر التنسيق بمسافات بادئة أو المضغوط
خيار تنسيق مقروء مفعّل، وهو يضيف مسافات بادئة إلى JSON ليسهل قراءته ومراجعته. أوقفه من الإعدادات المتقدمة للحصول على ملف في سطر واحد يمكنك لصقه في جسم الطلب.
- 3
حوّل واستخدم الملف
اضغط التحويل إلى JSON، ثم نزّل الملف وسلّمه إلى الواجهة البرمجية أو أداة التحقق أو السكربت الذي احتاج إليه.
لماذا يحوّل المطورون YAML إلى JSON
كُتب YAML للبشر: مسافات بادئة بدل الأقواس، وتعليقات، ودون علامات اقتباس حول معظم النصوص. لذلك هو صيغة ملفات Kubernetes وسير عمل GitHub Actions وملفات Docker Compose ومواصفات OpenAPI التي تعدّلها الفرق يدويًا. أما JSON فمكتوب للبرامج. لكل لغة محلل JSON في مكتبتها القياسية، وتقرؤه المتصفحات أصلًا، ومعظم واجهات HTTP لا تقبل غيره.
لذلك يحدث التحويل عند الحدود بين الأنظمة. يمرّر مهندس المنصة ملف manifest عبر jq الذي يقرأ JSON فقط. ويرسل مطور الخلفية مواصفات OpenAPI إلى مولّد أكواد يريد JSON. ويحمّل المختبِر بيانات اختبار مكتوبة بـ YAML في مجموعة اختبارات JavaScript. في كل حالة يبقى YAML مصدر الحقيقة ويكون JSON ناتج بناء. وإذا كان لديك مجلد كامل من الخلاصات أو ملفات التصدير بدل ملفات الإعدادات، فإن تحويل XML إلى JSON يعالج صيغة الترميز الأقدم بالطريقة نفسها.
كيف تطورت YAML و JSON معًا
- أول اقتراح لـ YAML من Clark Evans
- 2001
- جعل YAML 1.2 صيغة JSON مجموعة جزئية من YAML
- 2009
- RFC 8259، معيار JSON الحالي
- 2017
- نشر مراجعة YAML 1.2.2
- 2021
ماذا يحدث لميزات YAML غير الموجودة في JSON
يتيح المرساة (&defaults) ومراجعها (*defaults) في YAML إعادة استخدام كتلة. لا يعرف JSON المراجع، فيُستبدل كل مرجع بنسخة كاملة من الكتلة المرتبطة بالمرساة.
- قد يكون JSON أطول من YAML بشكل ملحوظ
- تُوسَّع مفاتيح الدمج (
<<: *defaults) بالطريقة نفسها
الأسطر التي تبدأ بـ # توثيق للبشر. لا مكان لها في JSON فتُزال.
- احتفظ بـ YAML تحت التحكم في الإصدارات بوصفه المصدر المعلَّق
القيمة 2026-10-18 دون علامات اقتباس طابع زمني في كثير من محللات YAML. لا يملك JSON نوع تاريخ، فتُكتب نصًا "2026-10-18".
قد يحوي تدفق YAML عدة مستندات يفصل بينها ---. أما ملف JSON فيحمل قيمة واحدة، لذا ضع كل مستند في ملف مستقل عندما تتوقع الأداة المستقبِلة كائنًا واحدًا.
{
"service": "billing",
"replicas": 3,
"ports": [8080, 9090],
"env": {
"LOG_LEVEL": "info",
"REGION": "NO"
}
}حقائق عن صيغتي YAML و JSON
YAML
YAML
YAML ("YAML Ain't Markup Language") تنسيق بيانات سهل القراءة للبشر صدر أول مرة عام 2001. يعتمد على المسافات البادئة بدل الأقواس ويدعم التعليقات وهو مجموعة شاملة لـ JSON. يُستخدم على نطاق واسع للإعدادات في Docker Compose وKubernetes وGitHub Actions وتطبيقات كثيرة. اعتماده على المسافات البيضاء يجعله سهل الكسر بمسافة واحدة في غير موضعها، وقد تُفسَّر بعض القيم مثل "no" أو التواريخ بشكل غير متوقع.
- الضغط
- –
- الشفافية
- –
- الحركة
- –
- سنة الظهور
- 2001 · Clark Evans, Ingy döt Net, Oren Ben-Kiki
JSON
ترميز كائنات JavaScript (JSON)
JSON تنسيق نصي خفيف للبيانات المنظمة، شاعه Douglas Crockford في أوائل الألفية، واعتُمد في RFC 8259 وECMA-404. يمثّل الكائنات والمصفوفات والنصوص والأرقام والقيم المنطقية وnull بصياغة بسيطة مقروءة. وهو التنسيق الافتراضي لواجهات الويب البرمجية وملفات الإعداد وتبادل البيانات بين التطبيقات في معظم لغات البرمجة. لا يتضمن تعليقات ولا تواريخ ولا مخططات، ويصعب قراءة الملفات الكبيرة المتداخلة دون عارض.
- الضغط
- –
- الشفافية
- –
- الحركة
- –
- سنة الظهور
- 2001 · Douglas Crockford
يحوّل الناس YAML إلى JSON عندما يجب أن يغذّي ملف إعدادات أو مواصفات كُتب للبشر آلةً: طلب إلى واجهة برمجية أو مدقق مخططات أو أداة بلا محلل YAML.
الأسئلة الشائعة عن تحويل YAML إلى JSON
لماذا أحوّل YAML إلى JSON ما دامت البيانات نفسها؟
لأن كثيرًا من الأدوات لا تقرأ سوى أحدهما. قارئات JSON مضمّنة في كل لغة برمجة وكل متصفح، بينما يحتاج YAML إلى مكتبة إضافية. أجسام طلبات واجهات REST ومدققات JSON Schema وأداة jq وملفات مثل package.json أو manifest.json لإضافة المتصفح، كلها تتوقع JSON.
ماذا يحدث للتعليقات في ملف YAML؟
تُحذف. فمعيار RFC 8259 لا يتضمن صيغة للتعليقات في JSON، فلا مكان للأسطر التي تبدأ بـ #. احتفظ بملف YAML مصدرًا موثّقًا واعتبر JSON نسخة مولّدة يمكنك إعادة توليدها في أي وقت.
لماذا تحولت NO أو off إلى false؟
المحللات التي تتبع YAML 1.1 تقرأ yes وno وon وoff قيمًا منطقية، لذا قد يتحول رمز دولة مثل NO للنرويج إلى false. يقصر YAML 1.2 القيم المنطقية على true وfalse، لكن ليست كل الأدوات تلتزم به. ضع هذه القيم بين علامتي اقتباس في YAML، مثل "NO"، لتبقى نصوصًا في JSON.
هل يمكنني تحويل قالب CloudFormation مكتوب بصيغة YAML؟
يقبل AWS CloudFormation الصيغتين، لكن الوسوم المختصرة مثل !Ref و!GetAtt موجودة في YAML فقط. تكتبها قوالب JSON دوالَّ كاملة، {"Ref": "MyBucket"} أو {"Fn::GetAtt": [...]}. أعد كتابة الوسوم المختصرة بالصيغة الطويلة قبل التحويل ليبقى قالب JSON صالحًا.
كيف أحوّل في الاتجاه المعاكس؟
استخدم تحويل JSON إلى YAML. هذا هو الاتجاه المعتاد عندما تتحول استجابة واجهة برمجية أو ملف مولّد إلى ملف إعدادات مقروء في مستودع.