24 converter واحدها · ارز · فایل‌ها

تبدیل XML به JSON Extensible Markup Language ↔ JavaScript Object Notation رایگان آنلاین امن

فایل XML خود را رها کنید و JSON تحویل بگیرید. خواندن و نوشتن فایل همین‌جا، در مرورگر شما انجام می‌شود، پس فایل هرگز از دستگاهتان خارج نمی‌شود — و اینکه این تبدیل چه چیزی را حفظ می‌کند و چه چیزی را نمی‌تواند، در ادامه نوشته شده است تا مجبور نباشید خودتان کشفش کنید.

فایل خود را تبدیل کنید

فایل XML خود را اینجا رها کنید یا یکی را انتخاب کنید.

فایل شما هرگز از این دستگاه بیرون نمی‌رود. همه‌چیز در مرورگر شما اجرا می‌شود.

دربارهٔ این مبدل
آنچه حفظ می‌شود نام عنصرها، تودرتویی آن‌ها، ویژگی‌هایشان و متنشان. ویژگی نام خود را با @ در ابتدا نگه می‌دارد؛ متنی که با عنصرهای فرزند در یک عنصر مشترک است زیر #text نگه داشته می‌شود، چون جای دیگری برای آن نیست.
آنچه از دستش برنمی‌آید XML ایده‌ای دارد که JSON برایش واژه‌ای ندارد: عنصرها ترتیب دارند و ممکن است تکرار شوند. نامی که یک بار می‌آید به مقدار تبدیل می‌شود و نامی که دو بار می‌آید به آرایه، پس خواندن نتیجه همیشه همان XML را برنمی‌گرداند. توضیحات (comments)، دستورهای پردازش و اعلان XML بخشی از داده نیستند و منتقل نمی‌شوند.
کجا اجرا می‌شود در مرورگر شما. چیزی بارگذاری نمی‌شود، پس بعداً هم چیزی برای حذف کردن نیست.

بدون بارگذاری

تبدیل از XML

تبدیل به XML

این قالب‌ها از کجا آمده‌اند

CSV قدیمی‌ترین و کم‌استانداردترین آن‌هاست: جدولی که به شکل خطوط متن نوشته می‌شود، از دههٔ 1970 در کار بوده و تنها در سال 2005 به‌صورت مکتوب توصیف شد، یعنی زمانی که هر برنامه‌ای از قبل خودش تصمیم گرفته بود جداکننده چیست و چه زمانی باید گیومه گذاشت. XML در سال 1998 از SGML برآمد، برای اسنادی که باید ساختاری سخت‌گیرانه داشته باشند و در برابر یک طرح‌واره (schema) بررسی شوند. JSON را داگلاس کراکفورد حدود سال 2001 از دل جاوااسکریپت بیرون کشید و عمداً به اشیاء، آرایه‌ها، اعداد و رشته‌ها تقلیلش داد — و همین حداقل‌گرایی دلیل آن است که وب را در دست گرفت. YAML پسرعموی خواناتر آن است که در آن تورفتگی کاری را می‌کند که در جاهای دیگر کروشه و آکولاد می‌کنند. تنها نکته‌ای که هنگام تبدیل میان آن‌ها اهمیت دارد: CSV تخت است، شبکه‌ای از سطر و ستون، درحالی‌که JSON، XML و YAML درخت هستند.

کجا با آن‌ها روبه‌رو می‌شوید

CSV همان چیزی است که صفحه‌گسترده خروجی می‌دهد و حسابدار، پلتفرم فروشگاهی یا صورت‌حساب بانکی به شما تحویل می‌دهد. JSON زبانی است که سرویس‌های وب با آن حرف می‌زنند و فایل‌های پیکربندی روزبه‌روز بیشتر به آن نوشته می‌شوند. XML در سیستم‌های سازمانی قدیمی‌تر، در استانداردهای صدور فاکتور و درون خود قالب‌های اداری باقی مانده است. YAML جایی است که انسان‌ها تنظیمات را با دست می‌نویسند. تبدیل میان آن‌ها کار روزمرهٔ انتقال داده از جایی است که تولید شده به جایی که لازم است.

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

فایل CSV من در Excel به‌صورت یک ستون باز شد. چرا؟

چون صفحه‌گستردهٔ شما جداکنندهٔ دیگری انتظار داشت. Excel از جداکنندهٔ فهرست در تنظیمات منطقه‌ای رایانه پیروی می‌کند، که در هر جایی که ویرگول پیش‌تر علامت اعشار است — یعنی بیشتر اروپای قاره‌ای — نقطه‌ویرگول است. فایلی که با ویرگول جدا شده باشد آن‌گاه مانند یک ستون واحد از متن دیده می‌شود. به‌جای دوبار کلیک کردن روی فایل، از پنجرهٔ درون‌ریزی (import) استفاده کنید و جداکننده را صریحاً مشخص کنید. همین تنظیم منطقه‌ای دلیل آن است که گاهی 3.5 به‌صورت یک تاریخ وارد می‌شود.

چرا JSON تودرتوی من نمی‌تواند به یک صفحه‌گستردهٔ مرتب تبدیل شود؟

چون صفحه‌گسترده تخت است و JSON درخت. یک سطر در هر ستون فقط یک مقدار می‌تواند داشته باشد؛ اما یک شیء JSON می‌تواند فهرستی درون یک فیلد درون فهرستی دیگر داشته باشد. تبدیل یعنی انتخاب شیوهٔ تخت کردن آن: یا به هم چسباندن نام‌های تودرتو در یک عنوان ستون بلند، یا تکرار سطر والد به‌ازای هر فرزند. هر دو سازش هستند و هیچ‌کدام به‌طور خودکار قابل بازگشت نیست — به همین دلیل بازگشت از صفحه‌گسترده به شکل اصلی معمولاً به تصمیم یک انسان نیاز دارد.

آیا فایل کیفیتش را از دست می‌دهد؟

بستگی دارد که دو قالب چه چیزی را می‌توانند نگه دارند. تبدیل میان قالب‌هایی که همان چیز را ذخیره می‌کنند — مثلاً PNG به BMP یا WAV به FLAC — هیچ چیزی را از دست نمی‌دهد. تبدیل به قالبی که برای صرفه‌جویی در فضا اطلاعات را دور می‌ریزد، مانند JPEG یا MP3، هر بار کمی کیفیت از دست می‌دهد و تبدیل دوباره آن را برنمی‌گرداند. هر جا انتخابی وجود داشته باشد، این صفحه به‌جای ساخت کوچک‌ترین فایل، به حفظ کیفیت اصلی گرایش دارد.

آیا فایل من جایی بارگذاری می‌شود؟

نه. تبدیل درون مرورگر شما و روی دستگاه خودتان انجام می‌شود؛ فایل هرگز از آن خارج نمی‌شود و اینجا سروری نیست که بتواند آن را دریافت کند. به همین دلیل است که محدودیت یک فایل بزرگ حافظه خودِ شماست، نه بارگذاری، و به همین دلیل است که هیچ چیزی که تبدیل می‌کنید نمی‌تواند در لاگ‌های کسی ظاهر شود — از جمله لاگ‌های ما. ابزارهای صوت و ویدیو، اولین باری که از آن‌ها استفاده می‌کنید، موتور تبدیل خود را از همین سایت دریافت می‌کنند، حدود سی مگابایت و فقط یک بار؛ پس از آن کار باز هم کاملاً روی دستگاه شما انجام می‌شود.

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

XML ریش‌سفید داده‌های ساختارمند است. بیش از بیست سال است که فایل‌های پیکربندی، خوراک‌های محصول، فاکتورها، نقشه‌های سایت، خوراک‌های خبری، خروجی‌های برنامه‌های حسابداری و پاسخ‌های سرویس‌های وب قدیمی‌تر را حمل کرده است. دقیق و پرگو است و با برچسب‌هایی نوشته می‌شود که باز و بسته می‌شوند. JSON رقیب جوان‌تر آن است: سبک‌تر، خواندنش آسان‌تر و زبان طبیعی کد وب امروزی، که برنامه می‌تواند تقریباً بدون آماده‌سازی از آن استفاده کند. وقتی خوراک یا خروجی به‌صورت XML می‌رسد و چیزی که از آن استفاده خواهد کرد به زبان JSON حرف می‌زند، تبدیل لازم است. به همین دلیل مردم XML را به JSON تبدیل می‌کنند: داده را به شکل قدیمی‌تر دارند و ابزارهای تازه شکل تازه‌تر را می‌خواهند.

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

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

تبدیل چگونه کار می‌کند

عنصرها کلید می‌شوند، تودرتویی تودرتویی می‌ماند

XML شما درون مرورگر شما خوانده می‌شود. نام عنصرها کلید می‌شود و عنصرهای درون عنصرها شیءهایی درون شیءها می‌شوند، پس تودرتویی XML همان تودرتویی JSON است. ساختاری که در برچسب‌ها می‌بینید همان ساختاری است که در آکولادها می‌گیرید.

ویژگی‌ها نام خود را با @ نگه می‌دارند

عنصرهای XML می‌توانند ویژگی داشته باشند، تکه‌های کوچک داده که درون برچسب آغازین نوشته می‌شوند. JSON ویژگی ندارد، پس هر کدام به‌صورت کلیدی جداگانه با @ در جلوی نام نگه داشته می‌شود. عنصری مانند کتاب با ویژگی id کلیدی به نام @id کنار کلیدهای فرزندانش می‌دهد. @ روشن می‌کند کدام کلیدها از ویژگی‌ها آمده‌اند و کدام از عنصرها.

متن کنار عنصرهای فرزند

متنی که با عنصرهای فرزند در یک عنصر مشترک است زیر #text نگه داشته می‌شود، چون جای دیگری برای گذاشتنش نیست. این در فایل‌های داده نادر و در اسنادی که نثر را با نشانه‌گذاری می‌آمیزند رایج است. کلید #text متن را نگه می‌دارد و کلیدهای دیگر فرزندان را.

چه چیزی نگه داشته می‌شود

نام عنصرها، تودرتویی، ویژگی‌ها و متن

نام عنصرها، تودرتویی آنها، ویژگی‌هایشان و متنشان همه نگه داشته می‌شوند. اطلاعات موجود در داده در JSON است، به شکلی که برنامه‌ها می‌توانند در آن گشت بزنند.

ترتیب آنچه یک بار ظاهر می‌شود

وقتی عنصرها متفاوت‌اند ترتیب نوشته‌شدنشان را نگه می‌دارند، پس رکوردی که عنوان، نویسنده و تاریخ را فهرست می‌کند آنها را به همان ترتیب نشان می‌دهد.

متن دقیقاً

متن هر عنصر همان‌طور که نوشته شده نگه داشته می‌شود، از جمله فاصله‌های درون آن و حروف دارای نشانه، نمادها و نویسه‌های الفبای دیگر.

آنچه پیش از تبدیل XML به JSON باید بدانید

نام‌های تکراری آرایه می‌شوند

XML فکری دارد که JSON برایش واژه‌ای ندارد: عنصرها مرتب‌اند و ممکن است تکرار شوند. نامی که یک بار ظاهر می‌شود مقدار می‌شود و نامی که دو بار ظاهر می‌شود آرایه. پس فهرستی با سه عنصر item آرایه‌ای از سه می‌شود، اما فهرستی با یک item تنها مقدار می‌شود، نه آرایه‌ای از یک. این یعنی خواندن دوبارهٔ نتیجه همیشه همان XML را نمی‌دهد. برنامه‌ای که JSON را می‌خواند باید جایی که فهرست ممکن است کوتاه باشد برای هر دو شکل آماده باشد.

توضیح‌ها، دستورهای پردازش و اعلان حذف می‌شوند

توضیح‌ها، دستورهای پردازش و اعلان XML بخشی از داده نیستند و منتقل نمی‌شوند. یادداشتی که توسعه‌دهنده‌ای در توضیح گذاشته، خط بالای فایل که نسخه و رمزگذاری را بیان می‌کند و دستورهای مخصوص برنامه‌ای معین ناپدید می‌شوند. خود داده می‌ماند.

همه‌چیز متن است

XML نوع ندارد: هر مقدار درون برچسب‌ها متن است. عددها، تاریخ‌ها و پرچم‌های XML شما به‌صورت متنی که نوشته شده می‌رسند. برنامه‌ای که JSON را می‌خواند باید آنها را بر پایهٔ نیاز خودش تفسیر کند.

چگونه اینجا XML را به JSON تبدیل کنیم

فایل‌تان را اضافه کنید

فایل XML را روی صفحه رها کنید یا از دستگاه خود انتخاب کنید. در مرورگر شما خوانده می‌شود و بارگذاری نمی‌شود.

تبدیل کنید

دکمه را فشار دهید. فایلی با اندازهٔ معمولی لحظه‌ای طول می‌کشد. صفحه را باز نگه دارید تا تمام شود.

دانلود کنید و بررسی کنید

JSON را دانلود کنید و در ویرایشگر متن باز کنید. به آغاز و پایان نگاه کنید و بررسی کنید کلیدها همان نام‌هایی هستند که انتظار دارید و ویژگی‌ها @ خود را دارند.

نگاهی دقیق‌تر به XML و JSON

دو شیوه برای نوشتن یک درخت

هم XML و هم JSON درختی از مقدارها را توصیف می‌کنند. XML آن را با برچسب‌هایی می‌نویسد که باز و بسته می‌شوند و ویژگی‌ها و محتوای آمیخته را مجاز می‌داند. JSON آن را با آکولاد و کروشه می‌نویسد و فقط شیء، فهرست، رشته، عدد، بولی و null را می‌شناسد. برای داده، مانند رکوردها و تنظیمات، خوب همپوشانی دارند و برای اسناد، مانند صفحهٔ وب یا کتاب که متن و نشانه‌گذاری در هم تنیده‌اند، بد.

چرا رفت‌وبرگشت تضمین‌شده نیست

رفتن از XML به JSON چیزی اندک از دست می‌دهد: ترتیب عنصرهای آمیختهٔ تکراری، توضیح‌ها و تمایز میان ویژگی و عنصر، که فقط از راه @ نگه داشته می‌شود. در بازگشت، بنابراین ممکن است دقیقاً همان XML را نگیرید. برای تبادل داده این به‌ندرت مهم است. برای اسناد مهم است و بهتر است XML را به‌عنوان نسخهٔ اصلی نگه دارید.

فضای نام

نام‌های XML می‌توانند پیشوندی داشته باشند که آنها را در فضای نامی قرار می‌دهد، مانند واژگان استانداردی معین. چنین نام‌هایی همان‌طور که نوشته شده‌اند، با پیشوند، نگه داشته می‌شوند، پس کلیدی ممکن است dc:title باشد. آنها حل یا بازنویسی نمی‌شوند.

موقعیت‌های رایج با جزئیات

خوراک‌های محصول و کاتالوگ‌ها

تأمین‌کنندگان و بازارها اغلب خوراک‌هایی به XML ارائه می‌دهند. برای استفاده از آنها در اسکریپتی امروزی یا وارد کردن آنها به بستری که JSON می‌گیرد، XML را به JSON تبدیل کنید و نتیجه را بخوانید.

سرویس‌های وب قدیمی‌تر

سرویس‌هایی که در دورهٔ SOAP و APIهای اولیه ساخته شده‌اند با XML پاسخ می‌دهند. اسکریپتی که بخواهد از پاسخشان استفاده کند می‌تواند با JSON کار کند که کار کردن با آن آسان‌تر است.

فایل‌های پیکربندی و تنظیمات

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

خوراک‌ها، نقشه‌های سایت و خروجی‌ها

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

توصیهٔ عملی پیش از تبدیل XML به JSON

بررسی کنید XML خوش‌ساخت است

هر برچسب باید بسته شود و فایل باید یک عنصر ریشهٔ واحد داشته باشد. اگر صفحه خطایی گزارش کرد، فایل را در ویرایشگری که مشکل‌های XML را برجسته می‌کند باز کنید و خطی را که نشان می‌دهد درست کنید.

بدانید فهرست‌ها کجا ممکن است کوتاه باشند

اگر XML شما فهرست دارد، به یاد داشته باشید که فهرستی با یک مورد مقدار می‌شود، نه آرایه‌ای از یک. کدی را که JSON را می‌خواند طوری طرح کنید که هر دو حالت را اداره کند.

تصمیم بگیرید با ویژگی‌ها چه کنید

ویژگی‌ها به‌صورت کلیدهایی با @ می‌رسند. اگر برنامهٔ شما آنها را زیر نام‌های دیگر انتظار دارد، پس از تبدیل آنها را تغییر نام دهید یا برنامه را تنظیم کنید.

فایل‌های بزرگ

همه‌چیز روی دستگاه شما اجرا می‌شود، پس فایلی بسیار بزرگ حافظه می‌خواهد. برای فایل‌هایی با چندین مگابایت از رایانه استفاده کنید و اگر صفحه به زحمت افتاد داده را تقسیم کنید.

پرسش‌هایی که مردم پیش از تبدیل می‌پرسند

چرا یک فهرست آرایه است و دیگری مقداری تنها؟

چون نامی که یک بار ظاهر می‌شود مقدار می‌شود و نامی که دو بار ظاهر می‌شود آرایه. فهرستی با یک مورد شبیه مقداری تنها است.

ویژگی‌هایم کجا رفتند؟

آنها کلیدهایی با @ در جلوی نام هستند، کنار کلیدهای عنصرهای فرزند.

متنی که کنار عنصرهای دیگر نشسته کجاست؟

زیر کلید #text، چون جای دیگری برای گذاشتنش نیست.

چرا توضیح‌هایم رفته‌اند؟

توضیح‌ها، دستورهای پردازش و اعلان XML بخشی از داده نیستند و منتقل نمی‌شوند.

آیا فایل من بارگذاری می‌شود؟

خیر. تبدیل در مرورگر شما اجرا می‌شود و فایل هرگز از دستگاه شما بیرون نمی‌رود.

آیا می‌توانم به XML برگردم؟

بله. JSON به XML درختی را دوباره به‌صورت XML می‌نویسد، هرچند تضمینی نیست که رفت‌وبرگشت یکسان باشد.

انتخاب هوشمندانه هنگام تبدیل XML به JSON

JSON، YAML یا جدول؟

JSON به برنامه‌ها می‌خورد. برای پیکربندی‌ای که مردم ویرایش می‌کنند، JSON به YAML پس از تبدیل راحت‌تر خوانده می‌شود. اگر XML در واقع جدولی از رکوردهای یکدست است، می‌توانید با JSON به CSV یا JSON به XLSX ادامه دهید.

XML را نگه دارید

XML نسخهٔ اصلی است. توضیح‌ها، اعلان و ترتیب دقیق را دارد. آن را نگه دارید و JSON را نسخه‌ای مناسب بدانید.

به مصرف‌کننده فکر کنید

ببینید چه چیزی JSON را خواهد خواند و کار را مناسب آن شکل دهید. اسکریپتی که ساختاری ثابت انتظار دارد اگر XML منظم باشد آسان‌تر نوشته می‌شود.

گرفتن نتیجهٔ خوب پس از تبدیل

JSON را در یک نمایشگر اعتبارسنجی کنید

نتیجه را در ویرایشگری که JSON را می‌فهمد باز کنید و شیءها را جمع کنید. اگر ساختار شبیه چیزی است که انتظار دارید، سالم است.

چند رکورد را با منبع مقایسه کنید

چند رکورد از میانه بردارید و با XML بسنجید. یک دقیقه طول می‌کشد و به شما می‌گوید تبدیل وفادار است.

برای انتشار کوچک کنید

اگر فایل را صفحهٔ وب بارگیری خواهد کرد و بزرگ است، ابزارهایی هستند که فاصله‌های اضافی را برمی‌دارند و آن را سبک‌تر می‌کنند. داده همان می‌ماند.

آماده کردن XML برای تبدیلی خوب

ساختار را منظم نگه دارید

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

تا می‌توانید از آمیختن متن و عنصر پرهیز کنید

متنی که کنار عنصرهای فرزند است زیر #text می‌رود. درست است، اما استفاده از نتیجه را دشوارتر می‌کند. برای داده، متن را در برگ‌ها نگه دارید، نه میان شاخه‌ها.

نخست با تکه‌ای کوچک آزمایش کنید

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

خواندن JSON پس از تبدیل XML به JSON

در ساختار گشت بزنید، حدسش نزنید

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

برای فهرست‌ها کد محافظه‌کارانه بنویسید

چون یک مورد مقدار است و چند مورد آرایه، امن‌ترین عادت این است که آنچه می‌خوانید را بپوشانید: اگر آرایه نیست، آن را در یکی بگذارید. یک خط کد در آغاز خواننده بقیه را ساده می‌کند و برنامهٔ شما دیگر روزی که خوراک فقط یک محصول دارد خراب نمی‌شود.

با ویژگی‌ها با دقت برخورد کنید

کلیدهایی که با @ آغاز می‌شوند ویژگی‌اند. بعضی ابزارها چنین نام‌هایی را به‌عنوان نام ویژگی نمی‌پسندند، پس شاید بخواهید هنگام بارگیری تغییر نامشان دهید. معنا همان می‌ماند؛ فقط برچسب عوض می‌شود.

ویرایش JSON را جایگزین منبع نکنید

وقتی داده تغییر می‌کند، XML را در منبعش تغییر دهید، یا بگذارید سامانه خروجی تازه تولید کند، و دوباره XML را به JSON تبدیل کنید. ویرایش نسخهٔ کپی این دو را ناهماهنگ می‌گذارد.

حریم خصوصی و نحوهٔ برخورد

چرا تبدیل محلی برای داده اهمیت دارد

فایل‌های XML اغلب چیزهای خصوصی دارند: فاکتورها، مشتریان، سفارش‌ها، تنظیمات. بسیاری از مبدل‌های آنلاین فایل شما را به سرور بارگذاری می‌کنند، پردازش می‌کنند و نتیجه را برمی‌گردانند، و مدتی نسخه‌ای روی ماشینی که کنترل نمی‌کنید می‌ماند. اینجا مرورگر خودتان کار را انجام می‌دهد، پس داده روی دستگاه شما می‌ماند.

وقتی می‌روید چه می‌شود

وقتی صفحه را می‌بندید، فایل تبدیل‌شده از مرورگر ناپدید می‌شود، پس نخست آن را دانلود کنید. هیچ چیز دربارهٔ داده‌های شما نگه داشته نمی‌شود.

اگر چیزی اشتباه پیش رفت

صفحه می‌گوید XML معتبر نیست

ممکن است برچسبی بسته نشده باشد، یا دو عنصر ریشه باشد، یا نویسه‌ای که XML مجاز نمی‌داند. فایل را در ویرایشگری که خطاهای XML را برجسته می‌کند باز کنید و خطی را که نشان می‌دهد درست کنید.

ساختار آن چیزی نیست که انتظار داشتم

فهرست‌هایی را که یک مورد دارند و ویژگی‌ها و متن آمیخته را بررسی کنید. آنها بیشتر شگفتی‌ها را توضیح می‌دهند.

صفحه با فایل بزرگ یخ می‌زند

همه‌چیز روی دستگاه شما اجرا می‌شود و فایل بزرگ حافظه می‌خواهد. روی رایانه دوباره امتحان کنید، یا داده را تقسیم کنید.

ابزارهای مرتبط

همین خانوادهٔ ابزارها کارهای همسایه را پوشش می‌دهد. برای بازگشت، از JSON به XML استفاده کنید. برای فایل‌های پیکربندی، JSON به YAML و YAML به JSON میان آن دو تبدیل می‌کنند. برای جدول‌ها، JSON به CSV، CSV به JSON، JSON به XLSX و XLSX به JSON هستند.

یک مثال عملی

فرض کنید تأمین‌کننده‌ای خوراک محصول را به‌صورت فایل XML با 800 محصول برایتان می‌فرستد که هر کدام ویژگی id، نام، قیمت و فهرستی از دسته‌ها دارد. فایل را اینجا رها می‌کنید و دکمه را فشار می‌دهید. لحظه‌ای بعد JSONی دانلود می‌کنید با آرایه‌ای از 800 محصول. id هر کدام کلید @id است، نام و قیمت کلیدهای جداگانه‌اند و دسته‌ها آرایه‌ای می‌سازند. برای چند محصولی که یک دسته دارند، مقدار رشته‌ای ساده است و اسکریپت واردکردن شما هر دو حالت را اداره می‌کند. XML به‌عنوان نسخهٔ اصلی تأمین‌کننده در پوشهٔ شما می‌ماند.

فهرست بررسی کوتاه

پیش از تبدیل

بررسی کنید XML خوش‌ساخت است. یادداشت کنید فهرست‌ها کجا ممکن است کوتاه باشند. XML را نگه دارید.

هنگام تبدیل

در صفحه بمانید تا فایل آماده شود.

پس از تبدیل

JSON را باز کنید، کلیدها، ویژگی‌ها و فهرست‌ها را بررسی کنید و با برنامه‌ای که آن را خواهد خواند آزمایش کنید.

اشتباه‌های رایج

فرض اینکه هر فهرست آرایه است

فهرستی با یک مورد مقدار می‌شود. کد خواندن را طوری بنویسید که هر دو را بپذیرد.

انتظار رفت‌وبرگشتی کامل

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

فراموش کردن اینکه همهٔ مقدارها متن‌اند

XML نوع ندارد. عددها و تاریخ‌ها را در برنامه‌ای که از آنها استفاده می‌کند تبدیل کنید.

داده‌های شما روی دستگاه شما می‌مانند

تبدیل به‌صورت محلی انجام می‌شود. فایل شما را مرورگر خودتان می‌خواند، همان‌جا بازنویسی می‌کند و به‌صورت JSON تحویل می‌دهد. چیزی بارگذاری نمی‌شود، پس نسخه‌ای روی سرور نمی‌ماند و هیچ‌کس دیگر نمی‌تواند آن را بخواند. برای داده‌هایی با محتوای خصوصی، این راه امن تبدیل XML به JSON است.

خلاصه

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

طول و مساحت جرم و حجم دما ارز