我有一个大文件(4 gig),只要说,4字节的浮动.我想把它当作列表,在某种意义上说,我想使用map,filter,foldl等.但是,我不想用输出生成一个新的列表,而是将输出写回该文件,因此只需要将一小部分文件加载到内存中.你可以说我是一个叫MutableFileList的类型
有没有人遇到这种情况?而不是重新发明轮,我想知道是否有一个黑客的方式来处理这个?
解决方法
你不应该把它视为内存中的[Double]或[Float].您可以做的是使用列表式的打包数组类型之一,例如与mmapFile或readFile一起使用的uvector / vector / …来一次拉取文件块,并处理它们.或者使用懒惰的数组类型,相当于懒惰的bytestrings.