XmlFormatter egy nyílt forráskódú Python osztályban, aki biztosítja a formázás XML dokumentumok. & Nbsp; Ez a formázó különbözik a többitől kezelése szóközöknek egy distnict formázási szabályok (lásd alább) - gondolkodás eleme tartalommal tárgyak és vegyes tartalom, mint a írott szöveg. De a formázás felfüggesztik elemek jelölt megőrzése. Lehet találni, hogy a leghasznosabb a feladatokkal korrekciói ill előadások. Tipikus használat gyakran így néz ki ::
a xmlformatter import formázó
formázó = formázó (francia = "4")
nyomtassa formatter.format_file ("/ home / pa / doc.xml")
Az Object stílusa tükrözi a tároló objektum tulajdonságait. Ezért minden környező szóközöknek eltávolítják, sorozatok szóközöknek összeomlott ::
& Nbsp;
& Nbsp;
& Nbsp;
Az alábbi ábrán a XML dokumentum formázott Object Stílus ::
& Nbsp;
& Nbsp;
A szöveg stílusa tükrözi a tároló írott szöveg. Szöveg belül várható vegyes tartalom. Therfore kezdő és záró szóköz karaktert kerülnek a szöveget csomópontok beágyazott elemeket a környező szöveget csomópontok. Megjegyzés: Ha a szöveg csomópont található, xmlformatter beszúr egy szöveget csomópont, amely egyetlen szóközt ki a beágyazott elem. Szekvenciáit szóközöknek összeomlott egyetlen ::
& Nbsp;
A beágyazott elemeket kezelni, mint objektum tulajdonságait, de szóközöknek összemosódik szöveges csomópontok helyett meg kellene szüntetni :::
& Nbsp;
Mindkét stílus együttes használata egy XML dokumentumok. A formázás szabályai a következők:
A: környező szóközöknek eltávolítják elem tartalma
B: vezető szóközöknek eltávolítják elem tartalma
C: záró szóközöknek eltávolítják elem tartalma
D: vezető szóközöknek a beágyazott elemeket kerülnek a megelőző szöveget csomópont (vagy be) belül a vegyes tartalmat
E: záró szóköz karaktert a beágyazott elemeket kerülnek a következő szöveg csomópontok (vagy be) belül a vegyes tartalmat
F: szekvenciáit szóközöknek (n> 0) helyébe egy üres "" belül elem és vegyes tartalom
G: linebreak és az üres francia elemek belüli elemek tartalmat
A következő példa jelzi a leírt szóközöknek által a címkén belül XML dokumentum ::
AAAA
AAAABBBB4.4E + 12CCC AAAA
AAAA
FFFFein riesengro & szlig; er DDDDTeddyb & auml; r , F
der a & szlig; FFFFdie MilchEEEE und das trank BrotFFFF
und als er starb da háborúban erEEEE tot .CCCC
Az alábbi ábrán a formázott XML dokumentum: Minden szóközöknek helyébe egyetlen üres .:
& Nbsp;
& Nbsp;
A formázás is befolyásolhatja a sok paraméter, míg építése XmlFormatter objektum. Elemeket, amelyek a bal formázatlan kapnak egy listát elemnevek, úgynevezett megőrzése.
& Nbsp; Minden leszármazottai megőrzött elemeinek maradt formázatlan is .:
& Nbsp; a xmlformatter import formázó
& Nbsp; formázó = xmlformatter.Formatter (megőrizve = ["védett"])
& Nbsp; nyomtatni format.format_file ("/ home / pa / doc.xml")
A beljebb növelhető francia (alapértelmezett 2). A beljebb karakter lehet beállítani indentChar.
a xmlformatter import formázó
formázó = formázó (francia = "1", indentChar = " t")
nyomtassa formatter.format_file ("/ home / pa / doc.xml")
Beljebb nyomható el beállítás tömöríti igaz vagy választott francia = 0 .:
a xmlformatter import formázó
formázó = formázó (Compress = True)
nyomtassa formatter.format_file ("/ home / pa / doc.xml")
A kódolás a formázott dokumentum állítható encoding_input. Alapértelmezésben kódolás UTF-8 vagy olvasni XML deklaráció. A kódolás az output állítható encoding_output. a következők:
a xmlformatter import formázó
formázó = formázó (encoding_input = "ISO-8859-1", encoding_output = "ISO-8859-1")
nyomtassa formatter.format_file ("/ home / pa / doc.xml")
Módszerek
Xmlformatter lehet XML dokumentumok által adott utat vagy string .:
a xmlformatter import formázó
formázó = formázó ()
# File
nyomtassa formatter.format_file ("/ home / pa / doc.xml")
# Húr
formázott = formatter.format_string ("
xmlformat.py
XmlFormatter tartalmaz egy parancssori eszköz, xmlformat.py, csomagolási XmlFormatter osztályban. A paraméterek neve, mint a lehetőségek ::
xmlformat [--preserve "pre, szó szerinti"] [--compress] [--indent num] [--outfile file] [--encoding enc] [--outencoding enc] [--help] <--infile fájl | file>
xmlformat.py is olvasható a szabvány bemenetről, mint ::
& Nbsp; cat /home/pa/doc.xml | python xmlformat.py
Megjegyzés
XmlFormatter épül az első helyen a expat elemző, és ezért korlátozza expat. XmlFormatter alapján megjelentetik MIT licenc.
követelmények :
- Python
Hozzászólás nem található