Jump to content

Ruby Programming/Reference/Objects/Marshal

From Wikibooks, open books for an open world

Marshal

[edit | edit source]

The Marshal class is used for serializing and de-serializing objects to disk:

ex

serialized = Marshal.dump(['an', 'array', 'of', 'strings']) unserialized = Marshal.restore(serialized) 

With 1.9, each dump also includes an encoding, so you *must* use Marshal's stream read feature if you wish to read it from an IO object, like a file.

 a = File.open("serialized_data", "w") a.write Marshal.dump(33) b = File.open("serialized_data", "r") unserialized = Marshal.restore(b) b.close 
close