.
XmlFormatter XML belgelerinin biçimlendirme & nbsp sağlayan bir açık kaynak Python sınıfı ise; Bu biçimlendirici biçimlendirme kuralları distnict seti tarafından whitespaces ele alarak diğerlerinden farklıdır (aşağıya bakınız) - Bir gibi nesneler ve karışık içerik olarak düşünme eleman içeriği Yazılı metin. Ama biçimlendirme korumak olarak işaretlenmiş elemanlar için askıya alınır. Siz düzeltmeleri veya sunumlar içeren görevler için en yararlı bulabilirsiniz. Tipik kullanım sık sık bu gibi görünüyor ::
xmlformatter ithalat Formatter gelen
biçimlendirici = Formatter (girinti = "4")
("/ home / pa / doc.xml") formatter.format_file yazdırmak
Nesne Stili nesne özelliklerinin depolama yansıtır. Bu nedenle tüm çevre boşlukları whitespaces dizileri çökmüş, kaldırılır ::
& Nbsp;
& Nbsp;
& Nbsp;
Aşağıdaki Nesne stili ile biçimlendirilmiş XML belge gösterir ::
& Nbsp;
& Nbsp;
Metin Stili yazılı metnin depolama yansıtır. Metin karışık içerik içinde bekleniyor. Therfore ön ve arka boşlukları metin düğümlerini çevreleyen iç içe elemanları metin düğümleri konur. Not: Hiçbir metin düğümü bulunamazsa, xmlformatter iç içe elemanın dışında bir tek boşluk içeren bir metin düğümü ekler. Whitespaces dizileri tek daraltılır ::
& Nbsp; <şiir> Es savaş einmal und ist nicht mehr ... şiir>
iç içe elemanlar nesne özellikleri gibi ele, ama boşlukları yerine kaldırılıyor metin düğümlerle birleştirilir :::
& Nbsp; <şiir> Es savaş einmal und ist nicht mehr ... şiir>
Her iki stilleri XML belgeleri birlikte kullanılmaktadır. biçimlendirme kuralları vardır:
A: çevreleyen boşlukları eleman içeriği kaldırılır
B: lider boşlukları eleman içeriği kaldırılır
C: whitespaces firar eleman içeriği kaldırılır
D: iç içe elemanları lider boşlukları karışık içerik içinde önceki metin düğümü koymak (ya da takılı) vardır
E: iç içe elemanları whitespaces izleyen karma içerik içinde metin düğümlerini aşağıdaki koymak (ya da takılı) vardır
F: whitespaces (n> 0) dizileri elemanı ve karışık içerik içinde "" tek bir boş değiştirilir
G: elementler içerik içinde linebreak ve boşluk girintiler elemanları
Aşağıdaki örnek, bir XML belgesinin içinde kendi etiketleri ile tarif whitespaces işaretler ::
AAAA
AAAABBBB4.4E + 12CCC AAAA
AAAA <şiir> BBBBEs DDDDwar einmal und istEEEE nicht mehrF
FFFFein riesengro & szlig, er DDDDTeddyb & Auml, r , F
der bir & szlig, FFFFdie MilchEEEE und das sakinleştirici BrotFFFF
er als und starb da savaş erEEEE tot .CCCC şiir> AAAA
Aşağıdaki biçimlendirilmiş XML belge gösterir: tek bir boş yerine tüm whitespaces .:
& Nbsp;
& Nbsp; <şiir> Es savaş einmal und ist nicht mehr ein riesengro & szlig; er Teddyb & Auml, r , der bir & szlig ; die Milch und das sakinleştirici Brot und als er starb da savaş er tot . şiir>
Seçenekler
Biçimlendirme, parametrelerin bir çok XmlFormatter nesnesinin ise inşaat etkilemiş olabilir. Biçimlendirilmemiş sol olacak Elemanları, eleman isimlerinin listesi verilen korumak denir.
& Nbsp; korunmuş elemanların tüm torunları da biçimlendirilmemiş bırakılır .:
& Nbsp; xmlformatter ithalat Formatter gelen
& Nbsp; biçimlendirici = xmlformatter.Formatter (koruyarak = ["korumak"])
& Nbsp; ("/ home / pa / doc.xml") format.format_file yazdırmak
girinti girinti (varsayılan 2) ile yükseltilebilir. indenting karakter indentChar tarafından ayarlanabilir.
xmlformatter ithalat Formatter gelen
biçimlendirici = Formatter (girinti = "1", indentChar = " t")
("/ home / pa / doc.xml") formatter.format_file yazdırmak
Doğru veya seçimi girinti = 0 sıkıştırılmış ayarı tarafından bastırılmış olabilir Hizalama .:
xmlformatter ithalat Formatter gelen
biçimlendirici = Formatter (= True sıkıştırmak)
("/ home / pa / doc.xml") formatter.format_file yazdırmak
biçimlendirilmiş belge kodlayan encoding_input ile ayarlanabilir. Varsayılan kodlama UTF-8 veya xml bildirimi gelen okunur. çıkış kodlayan encoding_output ile ayarlanabilir. şunlardır:
xmlformatter ithalat Formatter gelen
biçimlendirici = Formatter (encoding_input = "ISO-8859-1", encoding_output = "ISO-8859-1")
("/ home / pa / doc.xml") formatter.format_file yazdırmak
Yöntemler
Xmlformatter yolu veya dize tarafından verilen XML belgeleri ayrıştırmak .:
xmlformatter ithalat Formatter gelen
biçimlendirici = Formatter ()
# Dosya
("/ home / pa / doc.xml") formatter.format_file yazdırmak
# Dize
biçimlendirilmiş = formatter.format_string ("
Xmlformat.py
XmlFormatter XmlFormatter sınıfı sarmak için bir komut satırı aracı, xmlformat.py içerir. parametreler seçenekleri gibi adlandırılır ::
xmlformat [--preserve "öncesi, edebi"] [--compress] [--indent num] [--outfile dosyası] [--encoding enc] [--outencoding enc] [help] <--infile dosya | Dosya>
xmlformat.py gibi, STDIN'den okuyabilirsiniz ::
& Nbsp; cat /home/pa/doc.xml | piton xmlformat.py
Not
XmlFormatter göçmen ayrıştırıcısının üzerine inşa edilmiş ve bu nedenle göçmen tarafından sınırlamıştır. XmlFormatter MIT lisansı altında yayınlandı
Gereksinimler :.
- Python
Yorum Bulunamadı