.
XmlFormatter is 'n oop bron Python klas, wat formatering van XML dokumente & nbsp bied; Dit Formatter verskil van ander deur die hantering spasies deur 'n distnict stel opmaak reëls (sien onder) - denke element inhoud as voorwerpe en gemengde inhoud as 'n geskrewe teks. Maar opmaak opgeskort vir elemente gemerk as bewaar. Jy kan dit vind mees bruikbare vir take wat korreksies of aanbiedings. Tipiese gebruik lyk dikwels soos hierdie ::
van xmlformatter invoer Formatter
Formatter = Formatter (streepje = "4")
druk formatter.format_file ("/ huis / pa / doc.xml")
Die doel Styl weerspieël die berging van voorwerp eienskappe. Daarom, almal rondom spasies verwyder, rye spasies is ineengestort ::
& Nbsp;
& Nbsp;
& Nbsp;
Die volgende toon die die XML-dokument formaat deur Object Style ::
& Nbsp;
& Nbsp;
Die teks Style weerspieël die stoor van 'n geskrewe teks. Teks binne gemengde inhoud verwag. Daarom voorste en agterste spasies gestel van teks nodes in geneste elemente omliggende teks nodes. Let wel: Indien geen teks node kan gevind word, xmlformatter plaas van 'n teks node met 'n enkele spasie uit die sub-element. Rye spasies is ineengestort na 'n enkele ::
& Nbsp;
Die geneste elemente hanteer soos voorwerp eienskappe, maar spasies saamgesmelt met teks nodes in plaas van verwyder :::
& Nbsp;
Beide style saam gebruik word in 'n XML-dokumente. Die uitleg reëls is:
A: omliggende spasies verwyder uit element inhoud
B: voorste spasies verwyder uit element inhoud
C: sleep spasies verwyder uit element inhoud
D: voorste spasies in geneste elemente binne gemengde inhoud voorafgaande teks node sit (of ingevoeg)
E: sleep spasies in geneste elemente binne gemengde inhoud volgende teks nodes sit (of ingevoeg)
F: rye spasies (n> 0) word vervang deur 'n enkele leeg "" binne element en gemengde inhoud
G: linebreak en witspasie koppeltekens elemente binne elemente inhoud
Die volgende voorbeeld dui die beskryf spasies deur hul etikette binne 'n XML-dokument ::
AAAA
AAAABBBB4.4E + 12CCC AAAA
AAAA
FFFFein riesengro & szlig; er DDDDTeddyb & auml; r , F
der 'n & szlig; FFFFdie MilchEEEE und trank das BrotFFFF
und as daar starb da oorlog erEEEE tot .CCCC
Die volgende toon die geformatteerde XML dokument: Alle spasies vervang deur 'n enkele leeg .:
& Nbsp;
& Nbsp;
Options
Formatering kan beïnvloed word deur 'n baie van parameters, terwyl die bou van XmlFormatter voorwerp. Elemente wat sal gelaat ongeformatteerde word op 'n lys van name element, genoem bewaar.
& Nbsp; Alle afstammelinge van bewaar elemente is ook ongeformatteerde links .:
& Nbsp; uit xmlformatter invoer Formatter
& Nbsp; Formatter = xmlformatter.Formatter (behoud = ["bewaar"])
& Nbsp; druk format.format_file ("/ huis / pa / doc.xml")
Die insp kan opgewek word deur streepje (verstek 2). Die insp karakter kan ingestel word deur indentChar.
van xmlformatter invoer Formatter
Formatter = Formatter (streepje = "1", indentChar = " t")
druk formatter.format_file ("/ huis / pa / doc.xml")
Insp kan onderdruk word deur die instelling saamgeperste waar of die keuse streepje = 0 .:
van xmlformatter invoer Formatter
Formatter = Formatter (compress = True)
druk formatter.format_file ("/ huis / pa / doc.xml")
Die enkodering van die formaat dokument kan ingestel word deur encoding_input. By verstek enkodering is UTF-8 of lees van XML-verklaring. Die enkodering van die uitset kan ingestel word deur encoding_output. is:
van xmlformatter invoer Formatter
Formatter = Formatter (encoding_input = "ISO-8859-1", encoding_output = "ISO-8859-1")
druk formatter.format_file ("/ huis / pa / doc.xml")
Metodes
Xmlformatter kan XML dokumente gegee deur pad of string ontleed .:
van xmlformatter invoer Formatter
Formatter = Formatter ()
# Lêer
druk formatter.format_file ("/ huis / pa / doc.xml")
# String
geformateer = formatter.format_string ("
xmlformat.py
XmlFormatter sluit 'n command line instrument, xmlformat.py, vir omvou XmlFormatter klas. Die parameters is vernoem soos die opsies ::
xmlformat [--preserve "pre letterlike"] [--compress] [--indent num] [--outfile lêer] [--encoding ENC] [--outencoding ENC] [help uit te voer] <--infile lêer | lêer>
xmlformat.py kan lees van stdin, soos ::
& Nbsp; kat /home/pa/doc.xml | luislang xmlformat.py
Nota strong>
XmlFormatter is bou op die top van die expat parser, en dus beperk deur expat. XmlFormatter is gepubliseer onder die MIT lisensie
Vereistes :.
- Python
Kommentaar nie gevind