Безкоштовний інструмент форматування XML [закрито]


223

Чи доступний безкоштовний інструмент форматування (відступ) XML, де я можу пропустити рядок XML і чи його форматувати, щоб я міг правильно прочитати документ XML?

Дякую

Редагувати ~ Я використовую XML-блокнот у Windows XP.


1
На якій платформі ви знаходитесь? Який текстовий редактор ви вже використовуєте? Більшість гідних текстових редакторів або підтримують це нестандартно, або мають додаткові додатки.
Джон Скіт

45
Я вважав це дуже конструктивним
JGilmartin

17
Погодьтеся. Це питання насправді добре відповідає запитанням та питанням: на вузьке запитання була фактична відповідь. Це питання не повинно було бути закритим.
Бен Коллінз

4
Я також згоден. Відповіді на це запитання дають корисну інформацію. Крім того, закриття питання через 2 роки після його запитання здається досить нерозумним.
Білл W

Кращий Formatter -> freeformatter.com/xml-formatter.html
AZ_

Відповіді:


349

Я вважаю, що Notepad ++ має цю особливість.

Редагування (для новіших версій)
Встановіть плагін "Інструменти XML" (плагіни меню, менеджер плагінів)
Потім запустіть: "Плагіни меню", "Інструменти XML", "Гарне друк" (лише XML - з розривами рядків)

Оригінальна відповідь (для старих версій Notepad ++)

Меню блокнота ++: TextFX -> HTML Tidy -> Tidy: Reindent XML

Однак ця функція охоплює XML, і це робить її нечистою. Щоб не було обгортання,

  • відкрити C:\Program Files\Notepad++\plugins\Config\tidy\TIDYCFG.INI,
  • знайдіть запис [Tidy: Reindent XML]і додайте wrap:0так, щоб він виглядав так:
[Охайний: Reindent XML] 
input-xml: так 
відступ: так 
обгортання: 0 

3
Можливо, вам знадобиться twu.ca/diitions/technology/sst/orion/blog/…
svrist

3
Я перевірив, що це працює без плагінів. Просто завантажте останню версію Notepad ++, і вона підтримуватиме це.
Майкл Ла Вой

7
Смішно (вводити в оману?), Що HTMLTidy описується як особливість Notepad ++. Це окремий інструмент ( tidy.sourceforge.net ), який значно довший, ніж Notepad ++, і його можна використовувати в будь-якому текстовому редакторі, що підтримує зовнішні інструменти. Я використовував його протягом віків з командного рядка, перш ніж я знайшов редактор FirstObject XML.
Еш

8
Функція XML відступу Notepad ++, однак, обертає XML, і це робить його "нечистим". Мені подобається те, як IE представляє це. Щоб не було обгортання для "Tidy: Reindent XML", відкрийте "C: \ Файли програми \ Блокнот ++ \ плагіни \ Налаштування \ охайно \ TIDYCFG.INI", знайдіть запис "[Tidy: Reindent XML]" та додайте "wrap: 0 "так що це виглядає наступним чином : [Tidy: XML створення відступу] вхідний XML: так відступ: так обгортка: 0 це повинно дати , НЕ обгорнутий XML
Джозеф

20
Тільки FYI, найновіша версія Notepad ++ (5,9 на момент написання) не включає TextFX, і для її роботи потрібно створити DLL вручну. У диспетчері плагінів встановіть плагін XML Tools - МНОГО простіше.
Алекс Бердслі

57

Безкоштовний редактор XML Firstobject для Windows називається foxe - чудовий інструмент.

Відкрийте або вставте у нього свій XML і натисніть F8 для відступу (можливо, вам знадобиться встановити кількість проміжків з відступами, оскільки це може бути за замовчуванням 0).

Це виглядає просто, проте він містить спеціально написаний XML-аналізатор, написаний на C ++, що дозволяє йому ефективно працювати з дуже великими XML-файлами (на відміну від деяких дорогих інструментів, пов'язаних із шпигунством, які я використовував).

На сторінці продукту:

Повний вихідний код Visual C ++ для цього редактора XML фірмового об'єкта (включаючи компонент MFC гігабайт управління редагуванням гігабайт CDataEdit) доступний у складі ліцензії Advanced CMarkup Developer. Це дозволяє розробникам реалізовувати власні функції обробки XML, такі як перевірка, перетворення, прикрашання та звітування для власних цілей.


4
Ха, дорогий "шпигунство" ... один на день :)
Сайф Хан

1
Це акуратний інструмент. Крихітні також.
Кев

1
Це навіть робить суб'єкти, це дійсно зручно!
Джеймс Б

1
це набагато краще, ніж плагін інструмента XML у блокноті ++
Li Tian Gong

5
У мене є файл розміром 15 Мб - Notepad ++ довбав 1 ядро ​​протягом багатьох хвилин без результату, Visual Studio робив те ж саме (і сповільнюючи жування все більше і більше пам’яті. Foxe може відкрити та відформатувати його миттєво - вражає. UI - це план-джейн, але це виконує роботу.
Майк Honey

52

Використовуйте наступне:

xmllint --format


мій дистрибутив cygwin вже мав це, тому я думаю, мені не потрібно було завантажувати Windows binary, а потім вирішити, що я краще напишу скрипт bash
vinnyjames

22

Ви можете відкрити XML-файл у будь-якому продукті Visual Studio Express та натиснути Ctrl+ A, Ctrl+ K, Ctrl+, Fщоб отримати гарне форматування.

Гей, це безкоштовно і це інструмент, тому він відповідає питанню. :-)


Раніше я це робив: D Ну, у мене було належне видання VS. Я так радий, що зараз знаю кращі легкі інструменти!
jamiebarrow

1
Весь цей час я копіював його з VS на Notepad ++ просто для форматування xml, і я міг би щойно це зробити! Більше того, я вже використовую Ctrl + K Ctrl + F для форматування коду. :-) Хороший.
Лі Оадес

1
І навіть можна трохи спростити, оскільки Ctrl + K, Ctrl + D форматує весь документ, щоб ви могли пропустити Ctrl + A.
Ганс Ольссон

16

Ще один метод повторного введення XML у Блокнот ++:

У меню виберіть «Плагіни» - «Інструменти XML» - «Гарне друк» (лише XML - з розривами рядків)
або натисніть Ctrl+ Alt+ Shift+ B.


3
можливо, вам доведеться додати плагін, перш ніж це зробити. додати через Plugin Manager
неприємний пастоз

навіть з цим плагіном NPP стає набагато повільніше, навіть відкриваючи 20+ МБ файлів на моєму ПК Core-i5 / 8GB
kmonsoor

5

Ви також можете спробувати http://xmltoolbox.appspot.com/ це онлайн-формат XML. Ви просто вставте свій XML у велике поле текстової області та натисніть "формат XML", після чого він дуже добре надрукує xml у текстовій області, щоб його було легко читати чи копіювати.

Також є приємна маленька функція фільтра, яка дозволяє бачити всі певні елементи.

Сподіваюся, вам сподобається інструмент


4

Якщо ви використовуєте Notepad ++, я б запропонував встановити плагін XML Tools . Ви можете прикрасити будь-який вміст XML (відступ та розриви рядків) або зв'язати його. Також ви можете (автоматично) перевірити файл і застосувати до нього перетворення XSL.

Завантажте останній поштовий індекс та скопіюйте витягнутий DLL в каталог плагінів установки Notepad ++. Крім того, завантажте Зовнішні вкладиші та скопіюйте їх у каталог% SystemRoot% \ system32 \.


Насправді вам також знадобляться ext_libs, є exe, який зробить усе для вас у джерелі forge repo
roundcrisis

3

Розширене традиційне форматування [оновлення]

XMLSpectrum - це синтаксис-підсвітка з відкритим кодом. Підтримка XML - але з особливими функціями для XSLT 2.0, XSD 1.1 та XPath 2.0. Тут я згадую про це, оскільки він також має особливі можливості форматування XML: він вертикально вирівнює атрибути та їх вміст, а також елементи - для підвищення читабельності XML.

Вихідний HTML підходить для перегляду в браузері або якщо XML потребує подальшого редагування, його можна скопіювати та вставити в редактор XML на ваш вибір

Оскільки xmlspectrum.xsl використовує власний аналізатор тексту XML, весь вміст, такий як посилання на об'єкти та розділи CDATA, зберігається - як у редакторі.

введіть тут опис зображення

Примітка щодо використання: це лише таблиця стилів XSLT 2.0, тому вам потрібно буде вкласти необхідний командний рядок (надані зразки) в невеликий сценарій, щоб ви могли автоматично трансформувати джерело XML.

Віртуальне форматування

XMLQuire - це безкоштовний редактор XML, який має спеціальні можливості форматування - він форматує XML належним чином, включаючи багаторядкові атрибути, значення атрибутів, відступ слова для загортання та навіть коментарі XML.

Усі відступи XML виконуються без вставки вкладок чи пробілів, забезпечуючи збереження цілісності XML. Для версій Windows пізніше XP не потрібна інсталяція, її файл .exe лише 3 Мб.

Якщо вам потрібно роздрукувати відформатований XML, у попередньому перегляді друку є спеціальні параметри, такі як нумерація рядків, яка слідує за відступом. Якщо вам потрібно скопіювати відформатований XML в текстовий процесор у вигляді розширеного тексту, він також доступний.

[Розкриття інформації: Я підтримую як XMLQuire, так і XMLSpectrum як "домашні проекти"]


Я щойно про це блогував
Бруно

1

Якщо ви програміст, багато бібліотек програмування для розбору XML дозволять вам розбирати XML, а потім виводити його - і генерування симпатичного друкованого, відступного виводу є варіантом виводу.


1

Спробуйте http://prettydiff.com/ Алгоритм схожий на HTML Tidy, але є більш повним. Програма написана повністю на JavaScript, тому нічого не потрібно встановлювати.


1

Блокнот ++ добре розмовляє лише тоді, якщо ви перебуваєте в ANSI. Якщо ви робите це на зразок "ANSI AS UTF8", охайно забрудніть документ: /.


1

Відповідь не безпосередньо, але все-таки добре знати: після відступу переконайтесь, що аналізатор (и) та додаток (и), які згодом оброблять відформатований XML, не дадуть різних результатів. Білий простір часто важливий у XML, і більшість відповідних парсерів переносять його на додаток.


Сумно відомий приклад семантично значущого пробілу є у WPF . Зокрема, суміжні <Run />теги внесуть у вихідний (як правило, небажаний) простір , якщо тільки ці теги не суворо опиняються у вихідному файлі XAML .
Гленн Слейден
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.