Xml-fun and how do I make a method shorter

I’ve got a little problem.

http://pastie.org/447561

I want the parseFile-method to do what the outcommented-method do - just
shorter and prettier.
Anyone who can give some tips on how I can do this?

Kris Thomsen wrote:

I’ve got a little problem.

http://pastie.org/447561

I want the parseFile-method to do what the outcommented-method do - just
shorter and prettier.
Anyone who can give some tips on how I can do this?

You have no clear return value, so I don’t know exactly how you want
those arrays returned. I went ahead and put them in a Hash and returned
that.

def parseFile file
data= { ‘code’ => [], ‘desc’ => [], ‘rate’ => [] }
file.search(‘currency’).each do |currency|
data.each_pair { |k,a| a.push currency.attributes[k] }
end
return data
end

Don W. wrote:

Kris Thomsen wrote:

I’ve got a little problem.

http://pastie.org/447561

I want the parseFile-method to do what the outcommented-method do - just
shorter and prettier.
Anyone who can give some tips on how I can do this?

You have no clear return value, so I don’t know exactly how you want
those arrays returned. I went ahead and put them in a Hash and returned
that.

def parseFile file
data= { ‘code’ => [], ‘desc’ => [], ‘rate’ => [] }
file.search(‘currency’).each do |currency|
data.each_pair { |k,a| a.push currency.attributes[k] }
end
return data
end

Oh, pretty.
But. How do I get the informations from my hashes? The idea was that I
line the values up beside eachother. Like:

Code Desc. Rate
EUR Euro 7.45
USD American Dollars 5.55