【发布时间】:2015-02-04 16:01:52
【问题描述】:
我对 Haskell 还很陌生。几天来,我一直在尝试创建一个实用程序来计算 Haskell 中的单词和行数,以帮助我更好地理解该语言。但是,我正在努力让它发挥作用。
到目前为止,我有:
wordCountUtility = do
putStrLn "Please enter the filename:"
filename <- getLine
putStrLn ("The file name you have entered is: " ++ filename)
contents <- readFile filename -- read the file specified in “name” into “contents”
lower <- (return . map toLower) contents
putStrLn lower
我尝试使用 'chop' 并找到 print . length . words =<< getContents 并对其进行了多次修改,但我没有运气。
我也在 Stack Overflow 上看过不少类似的答案,例如:identifying number of words in a paragraph using haskell
输出应该有点类似这样:
Amount of Lines within the file
Lines : 10
Amount of Words found within the file
Words : 110
任何帮助将不胜感激。
【问题讨论】:
-
那么您的问题到底是什么?您发布的代码在 SO 上的格式不正确,我首先建议您修复它,但您几乎只是描述了您想要做什么,而不是您遇到的问题。
-
对不起,我刚接触堆栈溢出,它没有正确复制代码。我在使用 count 函数时遇到问题,因为我想返回文件中的行数和字数。我现在已经能够解决这个问题了。
-
我遇到的新问题是 ReadFile 没有返回正确的行数。例如,如果我给它一个有 4 行的文件“new.txt” - 它返回 4 但是当我通过控制台输入它时它返回一个 :( 有什么帮助吗?谢谢
-
更新 - 也设法解决了这个问题。是对齐问题。还是谢谢!
-
您还没有发布任何实际计算行数或字数的代码。您确定您的问题中有相关代码吗?此外,您可以编辑您的帖子以使用更多信息更新它或修复格式,我鼓励您将任何相关信息放在帖子本身而不是 cmets 中。评论更多是为了澄清,应该被认为是暂时的,所有相关信息都应该出现在问题中,以便其他人更容易找到它。
标签: haskell count lines word-count