i have an xml file that goes like;
at some point i need the look up the data type for different
attributes.
I can get the data type using a Xpath query in the form using REXML
node = $fom_file.elements["//attribute [@name = ‘#{attribute_name}’]"]
it works okay, the thing is ,it takes ages (which is about ten
seconds)
so I have a mind to cache the attribute-datatype pairs in a hash for
faster lookup.
So can you guys tell me a simple and elegant way to do serialize
deserialize that hash to a file?
TIA
Hurcan Solter
hurcan solter wrote:
Hurcan Solter
Pretty easy…
h = {1=>2, 3=>4}
File.open(“foo”, “wb”) {|f| Marshal.dump(h, f)}
p File.open(“foo”, “rb”) {|f| Marshal.load(f)} # ==> {1=>2, 3=>4}
On 20.05.2008 07:46, hurcan solter wrote:
Hurcan Solter
irb(main):012:0> hash={1=>2}
=> {1=>2}
irb(main):013:0> hash.object_id
=> 1073423700
irb(main):014:0> File.open(“foo”, “wb”) {|io| Marshal.dump(hash, io)}
=> #<File:foo (closed)>
irb(main):015:0> hash = File.open(“foo”, “rb”) {|io| Marshal.load(io)}
=> {1=>2}
irb(main):016:0> hash.object_id
=> 134268870
Kind regards
robert
2008/5/20 Joel VanderWerf [email protected]:
attributes.
deserialize that hash to a file?
TIA
Hurcan Solter
Pretty easy…
h = {1=>2, 3=>4}
File.open(“foo”, “wb”) {|f| Marshal.dump(h, f)}
p File.open(“foo”, “rb”) {|f| Marshal.load(f)} # ==> {1=>2, 3=>4}
Amazing how we nearly picked the same solution - even the file name is
identical.
Cheers
robert
Robert K. wrote:
2008/5/20 Joel VanderWerf [email protected]:
…
h = {1=>2, 3=>4}
File.open(“foo”, “wb”) {|f| Marshal.dump(h, f)}
p File.open(“foo”, “rb”) {|f| Marshal.load(f)} # ==> {1=>2, 3=>4}
Amazing how we nearly picked the same solution - even the file name is
identical.
Heh. Maybe we’ve just been here too long, and our brains have been
saturated