D
Daniel Berger
Hi all,
After futzing with REXML and reading over the API I'm not quite
"getting it". I have a file that looks more or less like this:
<dbrc>
<database>
<name>foo</name>
<login>john</login>
<password>blah</password>
</database>
<database>
<name>bar</name>
<login>jane</login>
<password>hello</password>
</database>
<database>
<name>foo</name>
<login>jack</login>
<password>pfft</password>
</database>
</dbrc>
Given a name, I want to be able to grab the login and password. Or,
given both a name and a login, I want to be able to find the password.
In the event I am only given a name, and there is more than one entry
with that name, I want the first entry (from a top down perspective).
What is the shortest route to accomplish this with rexml? I've been
futzing around with each, each_element, root, get_text - but I'm just
not quite getting the hang of it.
To look at all of the text I did something like this:
doc = Document.new(File.new("dbrc.xml"))
doc.elements.each("/dbrc"){ |node|
node.each_element{ |element|
element.each_element{ |e|
puts e.get_text.value
}
}
}
But, I need to narrow it down more and be able to focus in on only the
elements I need.
What's the best/quickest/easiest way to accomplish this?
Regards,
Dan
After futzing with REXML and reading over the API I'm not quite
"getting it". I have a file that looks more or less like this:
<dbrc>
<database>
<name>foo</name>
<login>john</login>
<password>blah</password>
</database>
<database>
<name>bar</name>
<login>jane</login>
<password>hello</password>
</database>
<database>
<name>foo</name>
<login>jack</login>
<password>pfft</password>
</database>
</dbrc>
Given a name, I want to be able to grab the login and password. Or,
given both a name and a login, I want to be able to find the password.
In the event I am only given a name, and there is more than one entry
with that name, I want the first entry (from a top down perspective).
What is the shortest route to accomplish this with rexml? I've been
futzing around with each, each_element, root, get_text - but I'm just
not quite getting the hang of it.
To look at all of the text I did something like this:
doc = Document.new(File.new("dbrc.xml"))
doc.elements.each("/dbrc"){ |node|
node.each_element{ |element|
element.each_element{ |e|
puts e.get_text.value
}
}
}
But, I need to narrow it down more and be able to focus in on only the
elements I need.
What's the best/quickest/easiest way to accomplish this?
Regards,
Dan