tester tester napsal(a): > Ahoj vsetkych, > > kedze som s komplexnejsimi XML nepracoval ra by som sa spytal ako mozno > sparsovat takuto vec : > > <item type="com.raileasy.public.arrayOfFares"> > <flexibilitycode>y</flexibilitycode> > <packagetype>0</packagetype> > <totalpriceoffares>1540</totalpriceoffares> > <savingoverthroughfare>0</savingoverthroughfare> > <outboundjourneys type="array"> > <item>1</item> > </outboundjourneys> > <fares type="array"> > <item type="com.raileasy.public.fare"> > <tickettypecode>SDS</tickettypecode> > <routedescription>NOT LONDON</routedescription> > <prices type="array"> > <item type="com.raileasy.public.farePrice"> > <currency>GBP</currency> > <totalprice>1540</totalprice> > <numchildtickets>0</numchildtickets> > <numgrouptickets>0</numgrouptickets> > <totaladultprice>1540</totaladultprice> > <adultprice>1540</adultprice> > <numadulttickets>1</numadulttickets> > </item> > </prices> > <packagetype>0</packagetype> > <rtn>NO</rtn> > <outwardreservationrequired>NO</outwardreservationrequired> > <publicationsequence>056</publicationsequence> > <numpassengers>1</numpassengers> > <validitycode>87</validitycode> > <capricode>AAA</capricode> > <outboundjourneys type="array"> > <item>1</item> > </outboundjourneys> > <routecode>00700</routecode> > <crosslondon>NO</crosslondon> > <categorycode>y</categorycode> > <fareclass>2</fareclass> > <faregroup>S</faregroup> > </item> > </fares> > <includesafirstclassfare>NO</includesafirstclassfare> > <outwardreservationrequired>NO</outwardreservationrequired> > <includesastandardclassfare>YES</includesastandardclassfare> > <numfares>1</numfares> > <rtn>NO</rtn> > </item> > > je to cast xml ktore dostavam od servru. > Problem s ktorym sa borim je ze existuje niekolko elementov <item> ktore sa > nachadzaju rozhadzane po celom elemente a nijako medzi sebou nesuvisia inymi > slovami su ineho typu. > > Vie ma niekto nakopnut spravnym smerom ako sa s touto hlupostou vysporiadat ? > > A.
mate DTD? pokud ano, problem s parsovanim zrejme nebude (da se pocitat s
nejakou pevnou strukturou).
vas priklad mi navozuje dojem, ze to xml se skada dost dynamicky a atribut type
u elementu item urcuje co lze cekat vevnitr. pokud soubory nebudou
nejak velke, klidne bych pouzil DOM (dom4j) a sel na to rekurzivne s
"pretezovanim" ktere si ale budete muset udelat sam podle toho co je u elementu
item v atributu type. tedy neco jako (pseudokod):
void parseItem(Element e) {
switch(e.type)
"arrayOfFares" : parseArrayOfFares();
"farePrice" : parseFarePrice();
}
ale zalezi co z toho vlastne chcete dostat, pokud chcete jenom konkretni
atributy, pouzijte xpath
--
Martin Beránek
ICZ a.s., Pobočka Brno
Londýnské náměstí 2/856, 639 00 Brno
Tel.: +420 244 100 333
Fax.: +420 244 100 344
mailto:[email protected]
http://www.i.cz
smime.p7s
Description: S/MIME Cryptographic Signature
