プログラミング + アカデミック + 何か面白いこと

  1. Academic
  2. 0 view

[Haskell]Input PGM file part2

Pocket

What I want to do

Yesterday’s result can read header.
Next is reading pixel information.

Program

It’s like following.

import System.IO
import System.Environment (getArgs)

main = do
    args <- getArgs
    if length args <= 1 then do
        print "usage : ./pgm-input input.pgm output.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
        -- Read PGM Pixels-
        src_pixels <- hGetContents infile

        -- Output PGM File
        fh <- openFile (args !! 1) WriteMode
        hPutStrLn fh pgm_type
        hPutStrLn fh pgm_comment
        hPutStrLn fh pgm_max_brightness
        hPutStrLn fh contents
        hPutStrLn fh pgm_size
        hPutStrLn fh src_pixels

        hClose infile
        hClose fh

Input

car

Output

car-out

It seems to work.

Pocket

Academic recent post

  1. [Just Touch]Microsoft Quantum Development Kit…

  2. Visualization of Neural Network and its Train…

  3. [Machine Learning]Created docker image includ…

  4. [OpenCV][Ruby]Auto check web page design corr…

  5. [MachineLearning]How to introduce to real pro…

関連記事

PAGE TOP