From: Han Holl Date: 2002-06-01T21:09:54+09:00 Subject: Reading binary files (or strings) Hi, I need decode a binary file, (small enough to fit in memory). At the present I have code like this: class Dotqread def initialize(fn) @blob = File.open(fn).read end def wordread a = @blob.unpack("s")[0] @blob = @blob[2..-1] a end def longread a = @blob.unpack("L")[0] @blob = @blob[4..-1] a end def txtread a = wordread r = Opstring.new @blob[0...a] @blob = @blob[a..-1] if a > 0 r end ...... but as you can imagine performance is horrible. What I seem to need is either: string.unpack(format, offset) ## which I couldn.t find, but should be easy to hack, or: iostream.unpack(format) ## not found either. Is there another way to do what I want ? Did I miss some library ? Cheers, Han Holl