IT練習ノート

IT関連で調べたこと(実際は嵌ったこと)を書いています。

バイナリデータ読み込み

Read a bite from a binary file

Prelude> :l test01.hs
[1 of 1] Compiling Main             ( test01.hs, interpreted )
Ok, modules loaded: Main.
*Main> test_binary
Loading package array-0.4.0.1 ... linking ... done.
Loading package deepseq-1.3.0.1 ... linking ... done.
Loading package bytestring-0.10.0.2 ... linking ... done.
Loading package containers-0.5.0.0 ... linking ... done.
Loading package binary-0.5.1.1 ... linking ... done.
80*Main> :q!
[work]$  hexdump -C test.ppm 
00000000  50 36 0a 33 20 32 0a 32  35 35 0a c3 bf 00 00 00  |P6.3 2.255......|
00000010  c3 bf 00 00 00 c3 bf c3  bf c3 bf 00 c3 bf c3 bf  |................|
00000020  c3 bf 00 00 00                                    |.....|
00000025

5 * 16 + 0 = 80なので期待通り。