Ked uz tu kazdy posiela nejaku radu, skusim pridat svoju:
import org.apache.xpath.XPathAPI;
Document dom = ...;
String xpathExpression = "...";
NodeList nodelist
= XPathAPI
.selectNodeList(dom,
xpathExpression);
-----Original Message-----
From: ales <[EMAIL PROTECTED]>
Reply-To: Java <[email protected]>
To: Java <[email protected]>
Subject: Re: hledani v XML pomoci DOM
Date: Wed, 26 Mar 2008 08:09:35 +0100
Ahoj,
pripadne je mozne pouzit Groovy. Kod by mohol vyzerat nasledovne:
def Collections = new XmlSlurper().parseText(xml)
if
(Collections.Collection.Variables.Variable.Name.text().contains("counterSlow"))
{
println Collections.Collection.Name
}
Ales
Martin Jedlička wrote / napísal(a):
> Zdravim,
> mam XML a pracuji s nim pomoci DOM. Potreboval bych vedet, jak
> nejefektiveji/nejrychleji vyhledat nejakou hodnotu uzlu.
> Mam XML (viz nize) potreboval bych v nem najit hodnotu 'counterSlow'
> (jmeno promenne), pokud ji najde, tak bych potreboval vypsat jmeno
> kolekce 'Test'.
> Nejaky priklad jak toto delat?
> Diky moc.
> Martin
>
> XML:
> <Collections>
> <Collection>
> <Name>Test</Name>
> <Period>300</Period>
> <Variables>
> <Variable>
> <Name>hlavicka</Name>
> <CPU>3</CPU>
> <Format>dec</Format>
> <Unit>None</Unit>
> <Graph>false</Graph>
> </Variable>
> <Variable>
> <Name>counterFast</Name>
> <CPU>3</CPU>
> <Format>1.15</Format>
> <Unit>ALT01_Napeti DC</Unit>
> <Graph>true</Graph>
> </Variable>
> <Variable>
> <Name>counterSlow</Name>
> <CPU>3</CPU>
> <Format>1.15</Format>
> <Unit>ALT04_Proud</Unit>
> <Graph>true</Graph>
> </Variable>
> </Variables>
> </Collection>
> </Collections>
>
>
Tento e-mail je urcen pouze pro jeho adresata/adresaty a muze obsahovat duverne
informace, jejichz ochrana muze byt vyzadovana pravnimi predpisy.
Jestlize jste zpravu obdrzel(a) omylem, neprodlene informujte jejiho
odesilatele a tuto zpravu, jeji prilohy a pripadne kopie ihned vymazte.
Jakakoli forma uziti, zverejneni, reprodukce, kopirovani, distribuce a sireni
teto zpravy je v takovem pripade zakazana.
Komercni banka, a.s., neodpovida za mozne skody zpusobene neuplnym prenosem,
moznou modifikaci ci zpozdenim teto zpravy behem prenosu od odesilatele k
adresatovi.
This e-mail transmission is intended solely for the ordinary user of the e-mail
address to which it was addressed. It may contain legally privileged and/or
confidential information.
If you have received this e-mail in error or are not an intended recipient
please inform the sender with-out delay and delete this e-mail, attachments and
possible copies immediately. The unauthorised use, disclosure, distribution
and/or copying of this e-mail or any information it contains is prohibited.
Komercni banka, a. s., does not accept liability for any damage caused by
incomplete transmission, possible modification or delay of this e-mail during
the transmission from the sender to the recipient.