25 Jul
                
                    2012
                
            
            
                25 Jul
                
                '12
                
            
            
            
        
    
                5:59 a.m.
            
        Hello, I wrote a simple test program as main = do withFile "a.txt" ReadMode (\h -> do c <- hGetContents h putStrLn c) then I got my expected results: I'm a.txt but if I changed to main = do c <- withFile "a.txt" ReadMode hGetContents putStrLn c I got just a empty line. Where am I wrong? Thanks.