utf 8 - Read file with UTF-8 in Haskell as IO String -
i have following code works fine unless file has utf-8
characteres :
module main import ref main = text <- getline theinput <- readfile text writefile ("a"++text) (unlist . proc . lines $ theinput)
with utf-8 characteres this: hgetcontents: invalid argument (invalid byte sequence)
since file i'm working has utf-8
characters, handle exception in order reuse functions imported ref
if possible.
is there way read utf-8
file io string
can reuse ref
's functions?. modifications should make code?. in advance.
i attach functions declarations ref
module:
unlist :: [string] -> string proc :: [string] -> [string]
from prelude:
lines :: string -> [string]
this can done ghc's basic (but extended standard) system.io
module, although you'll have use more functions:
module main import ref import system.io main = text <- getline inputhandle <- openfile text readmode hsetencoding inputhandle utf8 theinput <- hgetcontents inputhandle outputhandle <- openfile ("a"++text) writemode hsetencoding outputhandle utf8 hputstr outputhandle (unlist . proc . lines $ theinput) hclose outputhandle -- guess 1 optional in case.
Comments
Post a Comment