MathGroup Archive 2013

[Date Index] [Thread Index] [Author Index]

Search the Archive

How to read 12 bits from a stream ?

  • To: mathgroup at
  • Subject: [mg131878] How to read 12 bits from a stream ?
  • From: János Löbb <janos at>
  • Date: Tue, 22 Oct 2013 00:49:37 -0400 (EDT)
  • Delivered-to:
  • Delivered-to:
  • Delivered-to:
  • Delivered-to:


I am trying to read a mixed file - binary and text -  with OpenRead and Read and BinaryRead, but I am not seeing a seek option, that is to move the pointer inside the file where I want it to be.  Of course I can do a read in a loop with a counter, but I hoped there is a better way to do it.

The file is 16.1MB, the first 912 elements are characters and binary mixed, followed by 16MB binary section.  The binary in this second section is  packed in the way that 2 times 12 bits  of little endian value is packed into 3 bytes.  I need to unpack them and put them into big endian order.  I am not seeing how can I read 12 bits at once with BinaryRead, it is aligned at the multiples of 8 bits.

Any good tip ?

Thanks ahead,

  • Prev by Date: Re: controllers in manipulate
  • Next by Date: Principal Components
  • Previous by thread: Using same $UserBaseDirectory for Mac & Windows versions
  • Next by thread: Re: How to read 12 bits from a stream ?