From: Rob Biedenharn Date: 2010-06-24T08:14:24+09:00 Subject: Re: marshalled data in 1.9 On Jun 23, 2010, at 7:01 PM, Roger Pack wrote: > Is there the possibility this would fail in 1.9? > > big = eval(File.read("out_inspect.small")) > File.open("out.marshal", "w") do |f| > > f.write(Marshal.dump(big)) > > end > Marshal.load(File.open('out.marshal', 'r')) > > > When I do this with large structures (on windows) I get messages like: > > bad.rb:7:in `load': dump format error for symbol(0x6c) (ArgumentError) > > > irb(main):001:0> Encoding.default_external > => # > irb(main):002:0> Encoding.default_internal > => nil > > But I had assumed since I was reading and writing in the same mode it > would work all right. Was I wrong? > -r You almost certainly want the 'rb' and 'wb' modes on Windows to read and write in binary, rather than text, mode. -Rob Rob Biedenharn http://agileconsultingllc.com Rob@AgileConsultingLLC.com http://gaslightsoftware.com rab@GaslightSoftware.com