Prelude System.IO> :t hPrint
hPrint :: Show a => Handle -> a
-> IO ()
Observe the signature of hPrint, it
takes a Handle, variable ‘a’, which derives Show class and write it to the
file.
FileUtil.hs
import System.IO main = do putStrLn "Enter file name (Including full path) to read" fileName <- getLine fileHandle <- openFile fileName WriteMode hPrint fileHandle "Hari Krishna" hPrint fileHandle "Gurram" hPrint fileHandle 523169 hPrint fileHandle 12345.6 hClose fileHandle
$ cat abc.txt First Line Second Line Third Line Fourth Line $ $ runghc FileUtil.hs Enter file name (Including full path) to read abc.txt $ $ cat abc.txt "Hari Krishna" "Gurram" 523169 12345.6
Observe the output, hPrint overrides the
existing data in the file abc.txt.
Difference
between hPrint, hPutStrLn
hPrint function displays value of any
printable type to the standard output device. hPrint function do this by
calling show on its input first.
Technically hPrint is defined like
below.
hPrint x = hPutStrLn (show x)
No comments:
Post a Comment