From: Wilson Bilkovich Date: 2005-12-10T06:30:33+09:00 Subject: Re: Unpack problems This looks like an endianness issue. Check out what happens when you reverse it: puts foo.reverse.unpack("N") "N" indicates Network byte order (big-endian), but it sounds like you may want to use system byte-order, which is "L" I don't have a Mac to test with, unfortunately. Check out page 603 in the Pickaxe book, if you have it. --Wilson. On 12/9/05, Aaron Patterson wrote: > Hi! I'm having some troubles with unpack that I can't seem to figure > out. My test program looks like this: > > foo = "\000\000\022\227" > puts foo.unpack("N") > > On linux (ruby 1.8.3 (2005-09-21) [i386-linux]), the test program gives > the following output: > > 4759 > > Which is what I expect. However, on OS X (ruby 1.8.2 (2004-12-25) > [powerpc-darwin8.0]), I get the following output: > > 2534539264 > > I can't figure out if I'm doing something stupid, or if there is a > problem with ruby. Thanks for the help! > > --Aaron > > >