参见:http://www.btsmth.com/show_snapshot.php?en_name=FuncProgram&gid=20701
要用到ghc的一些特性ImplicitParams。module Main( main) whereimport System.IO.Encoding hiding (print)import Data.Encoding.GB18030import Data.Encoding.UTF8import Data.Encodingimport Prelude hiding(putStrLn,readFile)main::IO()main=do let ?enc = UTF8; putStrLn "你好" putStrLn (take 1 "你好" ) print "你好" f <- readFile "utf-8.txt" print f putStrLn f let ?enc = GB18030; g <- readFile "gb2312.txt" let ?enc = UTF8; putStrLn g;