やりたいこと
HaskellでPGMファイルを生成することができたから、
今度は入力出来るようにしてみたい。
プログラム
とりあえずヘッダーを読み込んで出力するところまで。
import System.IO
import System.Environment (getArgs)
main = do
args <- getArgs
if length args == 0 then do
print "usage : ./pgm-input test.pgm"
else do
infile <- openFile (head args) ReadMode
-- Read PGM Header
pgm_type <- hGetLine infile
pgm_comment <- hGetLine infile
pgm_max_brightness <- hGetLine infile
pgm_size <- hGetLine infile
hClose infile
-- Output PGM File
putStrLn pgm_type
putStrLn pgm_comment
putStrLn pgm_max_brightness
putStrLn pgm_size
実行してみる。
$ ./pgm-input test.pgm
P5
# PGM type grayscale image
255 255
255