مبدل رایگان

JSON به مبدل XML

JSON را فورا به XML تبدیل کنید. از تگ های ریشه سفارشی و تورفتگی برای خروجی تمیز و ساختار یافته پشتیبانی می کند.

یا

درباره این ابزار

تبدیل JSON به XML برعکس جهت رایج‌تر XML به JSON است. تبدیل از نظر روحی ساده است - هر شی JSON را به یک عنصر XML، هر کلید را به یک برچسب فرزند، هر مقدار را به متن عنصر تبدیل کنید - اما XML قوانین ساختاری را تحمیل می کند که JSON ندارد. کلیدهای دارای کاراکترهای خاص نمی توانند به نام عناصر تبدیل شوند. آرایه ها به یک نمایش ثابت نیاز دارند. مقادیری که اشیا هستند به ساختار تودرتو خود نیاز دارند.

این مبدل از قراردادی نزدیک به آنچه بیشتر ابزارهای XML به JSON پیروی می‌کنند استفاده می‌کند: کلیدهایی که با پیشوند @ در عنصر والد قرار می‌گیرند. کلیدی به نام #text محتوای متنی عنصر را تامین می کند. آرایه ها عناصر تکراری را با همان نام تولید می کنند. اگر در ابتدا JSON را از XML تولید کرده باشید، پیروی از این قرارداد، رفت و برگشت را ثابت نگه می دارد.

XML خروجی با ساخت و ساز به خوبی شکل می گیرد: هر عنصر به درستی بسته شده است، مقادیر مشخصه از نقل قول خارج می شوند، و محتوای متن برای کاراکترهای خاص XML (&، <، >) فرار می کند. نتیجه در هر تجزیه‌کننده XML، اعتبارسنجی یا ابزاری که XML را مصرف می‌کند، کاملاً باز می‌شود.

چرا JSON را به XML تبدیل کنیم؟

بسیاری از سیستم‌های مستقر هنوز انتظار XML را دارند، حتی زمانی که ورودی‌های آنها از خطوط لوله مدرن تولید JSON باشد. سرویس‌های SOAP، ادغام‌های سازمانی، ناشران RSS، داده‌های ارسالی دولتی، و دنباله‌ای طولانی از نرم‌افزارهای قدیمی XML را می‌پذیرند و JSON را رد می‌کنند. این تبدیل تولیدکنندگان مدرن را به مصرف کنندگان قدیمی پل می کند.

XML همچنین از ویژگی‌هایی پشتیبانی می‌کند که JSON به صورت بومی ندارد - فضاهای نام، طرح‌واره‌ها (XSD)، دستورالعمل‌های پردازش، و سنت قوی اعتبارسنجی رسمی. برای سیستم‌هایی که این ویژگی‌ها اهمیت دارند (امضای XML، تبادل داده‌های معتبر رسمی، محدودیت‌های طرح‌واره پیچیده)، تولید خروجی XML انتخاب درستی است.

نحوه استفاده

جای‌گذاری JSON، XML دریافت کنید.

  1. JSON خود را اضافه کنید: متن JSON را در قسمت ورودی جای‌گذاری کنید یا یک فایل را رها کنید. JSON باید معتبر باشد. ورودی نادرست یک خطا ایجاد می کند.
  2. نام عنصر ریشه را انتخاب کنید: اگر JSON شما یک شی سطح بالا داشته باشد، کلید آن به طور خودکار به عنصر ریشه تبدیل می شود. برای آرایه های سطح بالا یا اولیه، یک نام ریشه را به صراحت مشخص کنید.
  3. تبدیل کنید: مبدل درخت JSON را راه می‌اندازد، کلیدها را به نام عناصر، کلیدهای با پیشوند @ به ویژگی‌ها، و #text را به محتوای متنی نگاشت می‌کند. آرایه ها عناصر خواهر و برادر مکرر را تولید می کنند.
  4. دانلود یا کپی کنید: به صورت xml ذخیره کنید یا کپی کنید. خروجی XML به خوبی شکل گرفته و آماده برای هر مصرف کننده XML است.

موارد استفاده رایج

جزئیات فنی

مبدل مقدار JSON را به صورت بازگشتی دنبال می کند. اشیا به عناصر تبدیل می شوند. برای هر کلید در شی، یک پیشوند @ به این معنی است که کلید به یک ویژگی در عنصر والد تبدیل می‌شود، متن # محتوای متنی عنصر را تامین می‌کند، و کلیدهای معمولی به عناصر فرزند تبدیل می‌شوند که مقدار آن به همان تبدیل بازگشته است.

آرایه ها به عناصر خواهر و برادر تکراری تبدیل می شوند. آرایه ای در زیر آیتم های کلیدی در JSON یک عنصر <items> را در هر آیتم آرایه در والد تولید می کند. این با نحوه نمایش مبدل‌های XML به JSON مجموعه‌های چند عنصری مطابقت دارد.

نام‌های عناصری که در XML نامعتبر هستند (شامل فاصله‌ها، نویسه‌های خاص، یا با اعداد شروع می‌شوند) پاکسازی می‌شوند: فاصله‌ها به زیرخط تبدیل می‌شوند، نویسه‌های نامعتبر حذف می‌شوند و نام‌های پیشرو رقم پیشوند می‌شوند. مقادیر مشخصه و متن به صورت XML-Escape شده (& تبدیل به &amp;، < تبدیل به &lt; و غیره) می شود تا خروجی به خوبی شکل بگیرد.

بهترین شیوه ها

سوالات متداول

آیا تبدیل JSON به XML محتوا را تغییر می دهد؟
محتوا تا حد امکان دقیق حفظ می شود. با این حال، برخی از ویژگی های خاص قالب ممکن است معادل مستقیم نداشته باشند، بنابراین تفاوت های قالب بندی جزئی ممکن است رخ دهد.
فرمت XML برای چه مواردی استفاده می شود؟
XML (زبان نشانه گذاری توسعه پذیر) در درجه اول برای داده های ساختار یافته با طرحواره های سفارشی، API های SOAP، فیدهای RSS استفاده می شود.
آیا مبدل ساختارهای JSON تودرتو یا پیچیده را مدیریت می کند؟
بله. این ابزار به درستی اشیاء تودرتو، آرایه ها و تمام انواع داده های استاندارد JSON را تجزیه می کند و ساختار کامل داده را در خروجی XML حفظ می کند.
آیا این تبدیل امن و خصوصی است؟
بله. تمام پردازش ها به صورت محلی در مرورگر شما انجام می شود. داده‌های شما هرگز از دستگاه شما خارج نمی‌شوند - بدون آپلود سرور، بدون پردازش ابری، بدون جمع‌آوری داده‌ها.
آیا خروجی چاپ زیبا خواهد بود؟
بله به طور پیش فرض - عناصر برای خوانایی تورفتگی دارند. اگر به خروجی فشرده برای انتقال نیاز دارید، تورفتگی را غیرفعال کنید.
آیا داده های من روی سرور آپلود می شود؟
نه. تبدیل در مرورگر شما اجرا می شود.
آیا می توانم JSON را به XML رفت و برگشت و برگشت کنم؟
بله وقتی هر دو جهت از قراردادهای یکسانی استفاده می کنند. JSON → XML → JSON به طور معمول نسخه اصلی را بازتولید می کند. معکوس نیاز دارد که JSON قبل از تبدیل به XML در فرم متن @attr/# باشد.
در مورد مقادیر null JSON چطور؟
مقادیر تهی به عناصر خالی تبدیل می شوند (<key/>). برخی از مصرف کنندگان ممکن است ترجیح دهند این عنصر را به طور کامل حذف کنند. JSON را از قبل پردازش کنید تا در صورت نیاز، کلیدهای تهی را رها کنید.