如何将GetFile与getContents一起使用?

时间:2017-11-02 05:27:57

标签: haskell

我一直在尝试使用用户输入字符串并将字典读入我的主循环中,但每当我尝试检查字符串是否在字典中时,我都会得到错误的返回。

 main = do
    charStream <- getContents
    contents   <- readFile "/usr/share/dict/words"
    let word = charStream
    let listDict = lines contents
    putStr (show (elem charStream listDict))

如果我能指出正确的方向,我将不胜感激。如何同时接收用户输入和读取文件?

2 个答案:

答案 0 :(得分:1)

猜测:您的输入流中有换行符。也可以lines使用wordscharStream或类似内容。

答案 1 :(得分:0)

如果您只需要阅读一个单词,请使用getLine。例如。 word <- getLine并修改elem使用的绑定(当前为charStream)。如果您想继续使用getContents:请在输入单词后按 Ctrl + d (EOF),而不是 Enter 以结束流。