Adrian Neumann wrote:
For example, the internet states, that the magic number, that puts 'BM'
in the first two bytes of the file is 19778. But when I
put (19778::Word16)
I get 'MB' instead. I read on the german Wikipedia, that bmp uses little
endian encoding, but Data.Binary uses big endian. Obviously this can't work.
Data.Binary is two different things. This is not as well explained as it
could be.
It is
(a) a binary read/write layer for haskell types, which uses its own
formats you have no right to complain about
(b) a simple efficient binary bitstream layer
You don't want to use (a), which takes great care to use compatible
endianness to make sure its output can be read on other architectures.
(b) however lets you choose your endianness.
http://www.cse.unsw.edu.au/~dons/binary/Data-Binary-Put.html
The docs are not as well interlinked as you might hope.
Jules
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe