在Haskell中将浮点数列表字符串转换为浮点数列表

在Haskell中将浮点数列表字符串转换为浮点数列表,haskell,Haskell,我正在尝试将包含浮点数的字符串转换为列表。基本上,我有一个文本文件,其中列出了一些数组,我不知道如何在haskell中收集它们 输入: "[0.0, 21.05263157894737, 450.56721805219945, 450.5625302466032] [0.0, 42.10526315789474, 350.6536813941797, 346.7624393708003] [0.0, 189.47368421052633, 447.5003638411328, 352.12736

我正在尝试将包含浮点数的字符串转换为列表。基本上,我有一个文本文件,其中列出了一些数组,我不知道如何在haskell中收集它们

输入:

"[0.0, 21.05263157894737, 450.56721805219945, 450.5625302466032]
[0.0, 42.10526315789474, 350.6536813941797, 346.7624393708003]
[0.0, 189.47368421052633, 447.5003638411328, 352.12736129109106]
[0.0, 210.5263157894737, 351.9493076378216, 347.65906596838636]"
只是一小段绳子

期望输出:

[0.0, 21.05263157894737, 450.56721805219945, 450.5625302466032]
[0.0, 42.10526315789474, 350.6536813941797, 346.7624393708003]
[0.0, 189.47368421052633, 447.5003638411328, 352.12736129109106]
[0.0, 210.5263157894737, 351.9493076378216, 347.65906596838636]
都是列表

我试着去看和转换角色,但都失败了

我的一小部分只是列出了所有的值

main = do
   let args = "output.txt"
   content <- readFile (args)
   print(linesOfFiles)
main=do
让args=“output.txt”

content由于文件的行由换行符分隔,因此可以使用函数将其转换为字符串列表。然后,该函数可用于该列表的每个元素:

readListOfFloats :: String -> [Float]
readListOfFloats = read

main = do
   let args = "output.txt"
   content <- readFile args
   print $ map readListOfFloats $ lines content
readlistdowlets::String->[Float]
ReadListOfflots=已读
main=do
让args=“output.txt”

内容提示:使用Prelude中的
read
。您说该文件有一组数组(或列表?),但您的示例输入仅显示一个列表。其他人在哪里?它们之间可能(或必须)有空格或其他字符吗?列表列表是以特定的字符或字符串结尾,还是转到文件的末尾?@dfeuer注意到,文件末尾会有额外的空白吗。他们之间有新的界线。抱歉没有澄清。@DannyuNDos我已经尝试使用read函数,但我不确定如何正确使用。每当我尝试时,它都会说我需要创建Float和Int类型。每个列表由换行符
“\n”
分隔?
main = do
   let args = "output.txt"
   content <- readFile args
   print $ map (read :: String -> [Float]) $ lines content