我有带输入的文本文件,如何将其转换为ascii,反之亦然?
abz
z?
9798122
这些输入会给出这个输出:
9798122
12263
abz
首先我从文本文件中读取输入并拥有所有行,但我不知道如何将整行转换为ascii。以下是我到目前为止的情况:
asciiWords :: String -> String
asciiWords = words
convertLines :: [String] -> IO ()
convertLines = mapM_ (putStrLn . asciiWords)
main = do
content <- readFile "input.txt"
let linesList = lines content
convertLines linesList
答案 0 :(得分:3)
Data.Char
模块提供ord
和chr
,用于从Unicode字符转换为其代码点并返回。
ord :: Char -> Int
chr :: Int -> Char -- beware! partial function
较少的助记符fromEnum
和toEnum
也可以在没有任何导入的情况下使用。
您需要花一点时间考虑不在ASCII范围内的字符会发生什么。