tigtools

مبدل JSON به YAML

JSON را جای‌گذاری کنید و خروجی YAML بلوکی برای فایل پیکربندی، مانیفست Kubernetes یا خط لوله CI بگیرید. هیچ داده‌ای بارگذاری نمی‌شود.

در مرورگر شما اجرا می‌شود بدون ثبت‌نام

تورفتگی

به‌جای آن YAML را به JSON تبدیل کنید

نحوه استفاده

  1. JSON را در ورودی جای‌گذاری کنید یا نمونه را امتحان کنید.
  2. تورفتگی ۲ یا ۴ فاصله را انتخاب کنید.
  3. YAML را کپی کنید یا به‌صورت فایل .yaml دانلود کنید.

نحوه کار

JSON به‌صورت سخت‌گیرانه تجزیه می‌شود؛ خطاهای نحوی با شماره خط و ستون توضیح داده می‌شوند (ویرگول انتهایی، کوتیشن تکی، کامنت و موارد مشابه). سپس داده‌ها با کتابخانه متن‌باز yaml به‌صورت YAML بلوکی نوشته می‌شوند؛ ترتیب کلیدها حفظ می‌شود و رشته‌های بلند هرگز شکسته نمی‌شوند.

رشته‌هایی که یک تجزیه‌گر قدیمی YAML 1.1 ممکن است آن‌ها را چیز دیگری بخواند داخل کوتیشن قرار می‌گیرند: yes، no، on، off، اعداد با صفر پیشرو مانند 0777 و مقادیر تاریخ‌مانند مانند 2024-01-31. به این ترتیب YAML برای هر تجزیه‌گری که آن را می‌خواند همان معنا را دارد. رشته‌های چندخطی به‌گونه‌ای نوشته می‌شوند که شکستن خطوط حفظ شود.

اعداد، مقادیر بولین و null در JSON مستقیماً به YAML نگاشت می‌شوند. برای جهت مخالف از YAML به JSON یا مبدل دوطرفه JSON ⇄ YAML استفاده کنید.

نمونه‌ها

مانیفست Kubernetes

خروجی JSON دستور kubectl get -o json را جای‌گذاری کنید و همان شیء را به‌صورت YAML قابل ویرایش و اعمال دریافت کنید.

مقادیری که باید رشته باقی بمانند

{"enabled": "on", "mode": "0755"} به enabled: "on" و mode: "0755" تبدیل می‌شود تا هیچ‌کدام به بولین یا عدد اکتال تبدیل نشوند.

پرسش‌های متداول

چرا برخی مقادیر داخل کوتیشن قرار دارند؟

زیرا بدون کوتیشن برخی تجزیه‌گرهای YAML ممکن است آن‌ها را بولین، عدد یا تاریخ بخوانند. داخل کوتیشن قرار دادن، آن‌ها را رشته نگه می‌دارد.

آیا می‌توانم JSON همراه با کامنت را تبدیل کنم؟

خیر. کامنت‌ها JSON معتبر نیستند؛ پیام خطا محل کامنت را نشان می‌دهد تا بتوانید آن را حذف کنید.

آیا ترتیب کلیدها حفظ می‌شود؟

بله. کلیدها به همان ترتیبی که در JSON آمده‌اند نوشته می‌شوند.

حریم خصوصی

تبدیل کاملاً در مرورگر شما انجام می‌شود. JSON و YAML شما بارگذاری یا ذخیره نمی‌شوند.