所以我有一个目录/ test,其中包含以下文件:
test.txt
BasicLoop.vm
FibonacciSeries.vm
StackTest.vm
test.vm
我试图将所有.vm文件读入一个大字符串,为了做到这一点,我想使用filterM doesFileExist dir
dir
是getDirectoryContents
的结果,删除目录和符号链接等等,但是当我测试它时,该过滤器的结果只是BasicLoop.vm和test.vm.它们都不是空的,当我偷看dir
的内容时它们会出现,所以它们显然存在。为什么功能说他们不是?
答案 0 :(得分:3)
为什么功能说他们没有?
因为getDirectoryContents
返回文件和目录名称,而不是完整的文件路径。要看到这一点,请尝试以下方法:
λ:> getDirectoryContents "test"
["data","..","test.dats","."]