آنچه میتوانید با این فرمتدهنده XML انجام دهید
- زیباسازی XML با تورفتگی و شکستن خط یکنواخت برای خوانایی آسانتر و بازبینی کد
- فشردهسازی XML با حذف نظرات و جمعآوری فاصلههای سفید بهطور دقیق بین تگها
- کنترل تورفتگی: انتخاب فاصله یا تب و تنظیم اندازه تورفتگی (۱–۸) مستقیماً از رابط کاربری
- محتوای عناصر، ویژگیها، بخشهای CDATA، فضاینامها و دستورالعملهای پردازش را حفظ میکند
- با XML، XSL/XSLT، XSD، WSDL، plist و سایر فرمتهای مبتنی بر XML مورد استفاده در پروژههای واقعی کار میکند
- عالی برای نقشههای سایت، فیدهای RSS/Atom، داراییهای SVG، پاکتهای SOAP، طرحبندیها و مانیفستهای اندروید
- کد را جایگذاری کنید یا فایلهای XML را مستقیماً در ویرایشگر بکشید و رها کنید
- نتیجه فرمتشده یا فشردهشده را سریعاً در ویرایشگر یا مخزن خود کپی کنید
- در مرورگر شما از طریق یک آداپتور XML اختصاصی اجرا میشود — بدون حساب کاربری، بدون ذخیرهسازی مداوم سمت سرور
🛠️ نحوه فرمت یا فشردهسازی XML در چند ثانیه for xml-formatter
۱. XML خود را جایگذاری یا آپلود کنید
XML خود را در ویرایشگر رها کنید یا یک فایل `.xml`، `.xsl`، `.xslt`، `.xsd`، `.wsdl` یا `.plist` آپلود کنید. ابزار سند را تجزیه و برای فرمتدهی یا فشردهسازی آماده میکند.
۲. فرمت یا فشردهسازی را انتخاب کنید
از انتخابکننده **Action** یا دکمههای اختصاصی برای تغییر بین **Format** (زیباسازی برای خوانایی) و **Minify** (فشرده برای اندازه و انتقال) استفاده کنید.
۳. تنظیم گزینههای تورفتگی (اختیاری)
**اندازه تورفتگی** مورد نظر خود (۱–۸ فاصله) و استفاده از فاصله یا تب را انتخاب کنید. این تنظیمات نحوه نمایش عناصر تودرتو در هنگام فرمتدهی را کنترل میکنند. همچنین میتوانید طول پیچش/خط را از طریق نگاشت داخلی `printWidth` تنظیم کنید.
۴. XML تمیز خود را کپی کنید
خروجی را بررسی کنید، سپس XML فرمتشده یا فشردهشده را به پروژه، نقشه سایت، محموله آزمایش یا فایل پیکربندی خود برگردانید. یک نسخه فرمتشده در Git نگه دارید و در صورت نیاز نسخه فشردهشده را به تولید ارسال کنید.
جزئیات فنی
سازگاری و رفتار XML
فرمتدهنده/فشردهساز برای XML عمومی و فرمتهای متداول مبتنی بر XML مورد استفاده در سیستمهای وب، موبایل و بکاند طراحی شده است.
| نوع | پشتیبانی | یادداشتها |
|---|---|---|
| XML 1.0 | ✅ کامل | اسناد XML استاندارد W3C با فضای نام و دستورالعملهای پردازش. |
| خوراکهای RSS / Atom | ✅ کامل | مفید برای اشکالزدایی ساختار خوراک، تاریخها و فیلدهای محتوا. |
| SVG / XML برداری | ✅ معمولی | مفید برای بهینهسازی SVG درونخطی و منابع آیکون قبل از جاسازی. |
| پاکتهای SOAP / XML-RPC | ✅ ساختار | خوانایی پاکتها و محمولهها را در طول اشکالزدایی بهبود میبخشد. |
| پیکربندی / XML اندروید / plist | ✅ رایج | طرحبندیها، مانیفستها، plistها و فایلهای XML سبک پیکربندی. |
حالتهای قالببندی و فشردهسازی
دو حالت اصلی هسته تجزیه XML یکسانی را به اشتراک میگذارند اما تحولات متفاوتی را اعمال میکنند.
| حالت | تبدیلها | جزئیات |
|---|---|---|
| قالببندی | چاپ زیبا | تورفتگی و شکستن خطوط یکنواخت بر اساس سلسلهمراتب عناصر اضافه میکند. |
| قالببندی | تنظیمات تورفتگی | اندازه تورفتگی (۱–۸) و سبک (فاصله یا تب) را از گزینههای رابط کاربری رعایت میکند. |
| قالببندی | نشانه طول خط | از یک `printWidth` داخلی مشتق شده از طول خط / پیچش در صورت لزوم استفاده میکند. |
| فشردهسازی | حذف نظرات | گرههای نظرات `<!-- ... -->` را برای کاهش حجم فایل حذف میکند. |
| فشردهسازی | فشردهسازی فاصله بین تگها | `> <` را به `><` بازنویسی میکند بدون دست زدن به گرههای متنی یا CDATA. |
| هر دو | حفظ CDATA و PIها | `<![CDATA[...]]>` و دستورالعملهای پردازش مانند `<?xml-stylesheet?>` را دستنخورده نگه میدارد. |
| هر دو | حفظ فضاینامها | پیشوندها، URIها یا اعلانهای فضاینام روی عناصر و ویژگیها را تغییر نمیدهد. |
محدودیتها و ایمنی ورودی
منطق پایه برای استفاده تعاملی درون یک تب مرورگر تنظیم شده است.
| پارامتر | مقدار | یادداشتها |
|---|---|---|
| حداکثر اندازه ورودی | ≈ ۲ مگابایت / ~۲,۰۰۰,۰۰۰ نویسه | همان محدودیت ایمنی منطق قالببند داخلی. |
| پسوندهای فایل پشتیبانی شده | .xml, .xsl, .xslt, .xsd, .wsdl, .plist | با لیست `fileExtensions` در پیکربندی ابزار مطابقت دارد. |
| انواع MIME | application/xml, text/xml | انواع محتوای معمول برای XML چسبانده یا بارگذاری شده. |
| زمانبندی | ~۲۵ ثانیه | با یک زمانبندی سخت در برابر ورودیهای بسیار بزرگ یا پاتولوژیک محافظت میکند. |
| رمزگذاری | UTF-8 توصیه میشود | برای بهترین نتایج، رمزگذاریهای قدیمی (ISO-8859-1, Windows-1252 و غیره) را قبل از پردازش تبدیل کنید. |
جایگزینهای خط فرمان
اگر نیاز به قالببندی یا فشردهسازی فایلهای XML بسیار بزرگ در ترمینال، اسکریپت یا خط لوله CI دارید، از این ابزارهای آزموده شده استفاده کنید.
لینوکس / 🍎 مک
قالببندی زیبای XML با xmllint
xmllint --format input.xml > output.xmlبا استفاده از libxml2، XML خوانا برای انسان و دارای تورفتگی تولید میکند.
فشردهسازی XML با حذف فاصلههای فقط تورفتگی
xmllint --noblanks input.xml | sed -E ':a;N;$!ba;s/>[\t\r\n ]+</></g' > output.min.xmlگرههای متنی خالی را حذف و فاصلههای بین تگها را به شدت جمع میکند.
قالببندی زیبا با xmlstarlet
xmlstarlet fo input.xml > output.xmlقالببند سریع XML که میتواند در اسکریپتهای ساخت و استقرار ادغام شود.
ویندوز (PowerShell)
جمعآوری فاصلههای بین تگها در XML
Get-Content input.xml -Raw | ForEach-Object { $_ -replace ">\s+<", "><" } | Set-Content output.min.xmlمتن و دادههای CDATA را دستنخورده نگه میدارد در حالی که فاصلههای بین تگها را فشرده میکند.
موارد استفاده عملی
پاکسازی نقشه سایت و XML سئو
`sitemap.xml` و دیگر XMLهای قابل خزش را برای بررسی و نگهداری آسانتر کنید.
- زیباسازی نقشه سایت و فید XML قبل از اعمال تغییرات در محیط تولید.
- تشخیص سریع تگهای نامرتب، URLهای تکراری یا عناصر الزامی مفقود.
- کوچکسازی نقشههای سایت برای انتقال سریعتر در حالی که یک نسخه قابل خواندن در مخزن شما باقی میماند.
اشکالزدایی XML و APIها برای توسعهدهندگان
درک XML تولید شده توسط ماشین از سرویسها، میانافزارها یا سیستمهای قدیمی.
- قالببندی پاسخهای SOAP و XML-RPC قبل از بررسی محمولهها.
- پاکسازی XML تولید شده توسط CMS برای ردیابی ساختار شکسته یا گرههای نامعتبر.
- کوچکسازی قطعات پیکربندی XML قبل از جاسازی آنها در قالبهای دیگر.
فایلهای پیکربندی و زیرساخت
فایلهای XML زیرساخت را در Git قابل خواندن نگه دارید در حالی که در محیط تولید مصنوعات فشرده ارائه میشوند.
- زیباسازی XML طرحبندی Android و مانیفستها قبل از بازبینی کد.
- یکسانسازی تورفتها در کتابخانههای مشترک XSD/XSLT.
- ایجاد انواع فشرده XML برای بستهبندی، بهروزرسانیهای OTA یا خطوط لوله استقرار.
❓ Frequently Asked Questions
❓اگر XML من ناقص باشد چه اتفاقی میافتد؟
XML به درستی تشکیل نشده باشد، تجزیهگر زیرین شکست میخورد و ابزار به جای تولید خروجی، خطا گزارش میدهد. مسائل ساختاری مانند تگهای بسته نشده، تودهداری نامعتبر، نقلقولهای مفقود یا نامهای عناصر ناهماهنگ را برطرف کنید، سپس فرمتکننده را دوباره اجرا کنید.📏چه زمانی حذف فاصلههای سفید در XML ایمن است؟
🧼آیا کوچککننده XML نظرات را حذف میکند؟
🔒آیا XML من به سرور ارسال میشود؟
XML انجام میشود. به عنوان یک روش بهترین عمل کلی، از چسباندن دادههای بسیار محرمانه یا اسرار در ابزارهای آنلاین خودداری کنید و برای محمولههای بسیار حساس، گردش کار محلی را ترجیح دهید.⚙️آیا میتوانم همان قالببندی را در IDE یا CI خود دریافت کنم؟
XML را به عنوان بخشی از گردش کار محلی شما زیبا چاپ میکنند استفاده کنید و آنها را در خط لوله CI خود اجرا کنید تا داراییهای XML در شاخهها و محیطها به طور یکنواخت قالببندی شوند.Pro Tips
یک نسخه XML خوانا و قالببندی شده در مخزن خود نگه دارید و فقط از نسخه فشرده برای ساختهای تولید یا انتقال استفاده کنید.
مراحل قالببندی یا فشردهسازی XML را به خط لوله CI خود اضافه کنید تا یک سبک یکسان در تمام شاخهها و محیطها اعمال شود.
برای اسناد حاوی اعتبارنامهها، توکنها یا دادههای تجاری محرمانه، قالببندی و فشردهسازی XML را به صورت محلی با ابزارهای CLI اجرا کنید نه به صورت آنلاین.
هنگام کار با SVG، پس از فشردهسازی، چند آیکون یا تصویر کلیدی را به صورت بصری آزمایش کنید تا مطمئن شوید تغییرات فاصلهها بر رندر تأثیر نمیگذارند.
Additional Resources
Other Tools
- زیباکننده CSS
- زیباکننده HTML
- زیباکننده JavaScript
- زیباکننده PHP
- انتخابگر رنگ
- استخراجکننده اسپرایت
- دیکودر Base64
- انکودر Base64
- فرمتدهنده C#
- فرمتدهنده CSV
- Dockerfile Formatter
- فرمتدهنده Elm
- فرمتدهنده ENV
- فرمتدهنده Go
- فرمتدهنده GraphQL
- فرمتدهنده HCL
- فرمتدهنده INI
- فرمتدهنده JSON
- فرمتدهنده LaTeX
- فرمتدهنده Markdown
- فرمتدهنده Objective-C
- Php Formatter
- فرمتدهنده Proto
- فرمتدهنده Python
- فرمتدهنده Ruby
- فرمتدهنده Rust
- فرمتدهنده Scala
- فرمتدهنده اسکریپت شل
- فرمتدهنده SQL
- قالببندی SVG
- قالببندی Swift
- قالببندی TOML
- Typescript Formatter
- قالببندی YAML
- قالببندی Yarn
- کوچککننده CSS
- Html Minifier
- Javascript Minifier
- کوچککننده JSON
- کوچککننده XML
- نمایشگر هدرهای HTTP
- PDF به متن
- تستکننده Regex
- بررسیکننده رتبه SERP
- جستجوی Whois