Strumento di formattazione XML gratuito [chiuso]


223

È disponibile uno strumento di formattazione (rientro) XML gratuito in cui posso incollare una stringa XML e formattarla in modo da poter leggere correttamente il documento XML?

Grazie

Modifica ~ Sto usando XML Notepad su Windows XP.


1
Su che piattaforma sei? Quale editor di testo stai già utilizzando? La maggior parte degli editor di testo decenti lo supportano immediatamente o hanno componenti aggiuntivi disponibili.
Jon Skeet,

45
L'ho trovato molto costruttivo
JGilmartin il

17
Essere d'accordo. Questa domanda in realtà si adatta bene alle domande e risposte: c'era una risposta concreta a una domanda ristretta. Questa domanda non avrebbe dovuto essere chiusa.
Ben Collins

4
Sono anche d'accordo. Le risposte a questa domanda forniscono informazioni utili. Inoltre, chiudere una domanda 2 anni dopo che è stata posta sembra piuttosto sciocco.
Bill W,

Risposte:


349

Credo che Notepad ++ abbia questa funzione.

Modifica (per le versioni più recenti)
Installa il plug-in "Strumenti XML" (Menu Plugin, Plugin Manager)
Quindi esegui: Menu Plugin, Strumenti Xml, Pretty Print (solo XML - con interruzioni di riga)

Risposta originale (per versioni precedenti di Notepad ++)

Menu Notepad ++: TextFX -> HTML Tidy -> Tidy: Reindent XML

Questa funzionalità tuttavia racchiude gli XML e la rende "impura". Per non avere involucro,

  • aperto C:\Program Files\Notepad++\plugins\Config\tidy\TIDYCFG.INI,
  • trova la voce [Tidy: Reindent XML]e aggiungi in wrap:0modo che appaia così:
[Tidy: Reindent XML] 
input-xml: sì 
trattino: sì 
avvolgere: 0 


3
Ho verificato che funziona senza plug-in. Scarica l'ultima versione di Notepad ++ e supporterà questo.
Michael La Voie,

7
È divertente (fuorviante?) Che HTMLTidy sia descritto come una funzionalità di Notepad ++. È uno strumento autonomo ( tidy.sourceforge.net ) che esiste da molto più tempo di Notepad ++ e può essere utilizzato in qualsiasi editor di testo che supporti strumenti esterni. L'ho usato per anni dal prompt dei comandi prima di trovare l'editor XML FirstObject.
Ash,

8
La funzione di rientro XML di Notepad ++, tuttavia, racchiude gli XML e lo rende "impuro". Mi piace il modo in cui IE lo rappresenta. Per non eseguire il wrapping per "Tidy: Reindent XML", apri "C: \ Programmi \ Notepad ++ \ plugins \ Config \ tidy \ TIDYCFG.INI", trova la voce "[Tidy: Reindent XML]" e aggiungi "wrap: 0 "in modo che assomigli a questo: [Tidy: Reindent XML] input-xml: yes indent: yes wrap: 0 Questo dovrebbe dare XML non-wrapping
Joseph

20
Solo FYI, la versione più recente di Notepad ++ (5.9 al momento della stesura) non include TextFX e per farlo funzionare richiede la creazione manuale di una DLL. In Plugin Manager, installa il plugin XML Tools - MOLTO più semplice.
Alex Beardsley,

57

L'editor XML gratuito di Firstobject per Windows si chiama foxe è un ottimo strumento.

Apri o incolla il tuo XML al suo interno e premi F8 per rientrare (potrebbe essere necessario impostare il numero di spazi di rientro poiché potrebbe essere impostato su 0).

Sembra semplice, tuttavia contiene un parser XML scritto personalizzato scritto in C ++ che gli consente di lavorare in modo efficiente con file XML molto grandi facilmente (a differenza di alcuni costosi strumenti di "spionaggio" che ho usato).

Dalla pagina del prodotto:

Il codice sorgente completo di Visual C ++ per questo editor XML firstobject (incluso il componente MFC di controllo di modifica gigabyte CDataEdit) è disponibile come parte della Licenza per sviluppatori Advanced CMarkup. Consente agli sviluppatori di implementare funzioni di gestione XML personalizzate come convalida, trasformazione, abbellimento e reporting per i propri scopi.


4
Ah, costoso "spionaggio" ... uno per il giorno :)
Saif Khan,

1
Questo è uno strumento pulito. Anche piccolo.
Kev

1
Rende persino le entità, è davvero utile!
James B,

1
questo è molto meglio di quel plug-in di strumento XML nel blocco note ++
Li Tian Gong

5
Ho un file da 15 MB - Notepad ++ ha battuto 1 core per molti minuti senza risultato, Visual Studio ha fatto lo stesso (e ha rallentato masticando sempre più memoria. Foxe può aprirlo e formattarlo all'istante - impressionante. L'interfaccia utente è plan-jane ma è fa il lavoro
Mike Honey

52

Utilizza il seguente:

xmllint --format


la mia distro cygwin aveva già questo, quindi credo di non aver bisogno di scaricare il file binario di Windows e quindi decidere di scrivere uno script bash
vinnyjames

22

È possibile aprire il file XML in qualsiasi prodotto Visual Studio Express e premere Ctrl+ A, Ctrl+ K, Ctrl+ Fper formattarlo correttamente.

Ehi, è gratuito ed è uno strumento, quindi si adatta alla domanda. :-)


Prima lo facevo: D Bene, avevo una vera e propria edizione VS. Sono così felice di conoscere strumenti leggeri migliori ora!
Jamiebarrow,

1
Per tutto questo tempo, l'ho copiato da VS a Notepad ++ solo per formattare l'xml e avrei potuto farlo! Inoltre, utilizzo Ctrl + K Ctrl + F per formattare già il codice. :-) Ben fatto.
Lee Oades,

1
E può anche essere semplificato un po 'poiché Ctrl + K, Ctrl + D formatta l'intero documento in modo da poter saltare Ctrl + A.
Hans Olsson,

16

Un altro metodo per reindirizzare XML in Notepad ++:

Dal menu selezionare Plugin -> Strumenti XML -> Stampa carina (solo XML - con interruzioni di riga)
o premere Ctrl+ Alt+ Shift+ B.


3
potrebbe essere necessario aggiungere il plug-in prima di poterlo fare. aggiungi tramite il Plugin Manager
brutto pasty il

anche con questo plug-in, NPP diventa abbastanza più lento anche aprendo più di 20 MB di file sul mio PC Core-i5 / 8GB
kmonsoor

5

Puoi anche provare http://xmltoolbox.appspot.com/ è un formatter xml online. Basta incollare il tuo XML in un ampio campo di area di testo e premere "formato xml", quindi stampa l'XML nell'area di testo in modo che sia facile da leggere o copiare.

C'è anche una piccola funzione di filtro che ti permette di vedere tutto un certo elemento.

Spero ti piacerà lo strumento


4

Se usi Notepad ++, suggerirei di installare il plugin XML Tools . È possibile abbellire qualsiasi contenuto XML (rientro e interruzioni di riga) o linarizzarlo. Inoltre puoi (auto-) validare il tuo file e applicare la trasformazione XSL ad esso.

Scarica l'ultimo zip e copia la DLL estratta nella directory dei plugin dell'installazione di Notepad ++. Inoltre, scarica le librerie esterne e copiale nella directory% SystemRoot% \ system32 \.


In realtà avrai bisogno anche degli ext_libs, c'è un ex che farà tutto per te nel repository forge sorgente
roundcrisis

3

Formattazione convenzionale avanzata [Aggiornamento]

XMLSpectrum è un evidenziatore di sintassi open source. Supporto XML - ma con funzionalità speciali per XSLT 2.0, XSD 1.1 e XPath 2.0. Lo menziono qui perché ha anche speciali capacità di formattazione per XML: allinea verticalmente gli attributi, i loro contenuti e gli elementi, per migliorare la leggibilità XML.

L'HTML di output è adatto per la revisione in un browser o se l'XML necessita di ulteriori modifiche, può essere copiato e incollato in un editor XML a scelta

Poiché xmlspectrum.xsl utilizza il proprio parser di testo XML, tutti i contenuti come riferimenti alle entità e sezioni CDATA vengono conservati, come in un editor.

inserisci qui la descrizione dell'immagine

Nota sull'uso: questo è solo un foglio di stile XSLT 2.0, quindi è necessario racchiudere la riga di comando richiesta (esempi forniti) in un piccolo script in modo da poter trasformare automaticamente l'origine XML.

Formattazione virtuale

XMLQuire è un editor XML gratuito con speciali capacità di formattazione: formatta correttamente XML, inclusi attributi multi-linea, valori di attributo, rientro a capo automatico e persino commenti XML.

Tutto il rientro XML viene eseguito senza inserire tab o spazi, garantendo il mantenimento dell'integrità dell'XML. Per le versioni di Windows successive a XP, non è necessaria alcuna installazione, è solo un file .exe da 3 MB.

Se è necessario stampare l'XML formattato ci sono opzioni speciali all'interno dell'anteprima di stampa, come la numerazione delle righe che segue il rientro. Se è necessario copiare l'XML formattato in un elaboratore di testi come rich text, anche questo è disponibile.

[Divulgazione: mantengo sia XMLQuire che XMLSpectrum come "progetti domestici"]


Ho appena scritto un blog su questo qui: blogs.msdn.com/b/brunoterkaly/archive/2013/01/09/…
Bruno

1

Se sei un programmatore, molte librerie di programmazione di analisi XML ti permetteranno di analizzare XML, quindi di emetterlo - e generare output indentati e stampati piuttosto è un'opzione di output.


1

Prova http://prettydiff.com/ L'algoritmo è simile a HTML Tidy, ma è più completo. Il programma è scritto interamente in JavaScript, quindi non è necessario installare nulla.


1

Notepad ++ lo fa bene solo se sei in ANSI. Se lo fai in qualcosa come "ANSI AS UTF8", riordina il documento: /.


1

Non direttamente una risposta, ma è bene sapere comunque: dopo il rientro, assicurarsi che il parser (s) e le applicazioni che elaboreranno successivamente l'XML formattato non produrranno risultati diversi. Lo spazio bianco è spesso significativo in XML e la maggior parte dei parser conformi lo distribuisce all'applicazione.


Un esempio noto di spazi bianchi semanticamente significativi si verifica in WPF . In particolare, i <Run />tag adiacenti introdurranno uno spazio (di solito indesiderato) nell'output , a meno che tali tag non si trovino strettamente nel file di origine XAML .
Glenn Slayden,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.