1
我只是想知道是否可以使用System.Directory包中的任何特定方法或其他方法來獲取給定指定路徑的所有嵌套目錄的列表。我還沒有找到任何適當的功能,所以我想出了這樣的事情:Haskell中的嵌套目錄列表
getDirList :: FilePath -> IO [FilePath]
getDirList dir = do
contents <- getDirectoryContents dir
all <- mapM (return . (dir </>)) $ filter (\f -> f /= "." && f /= "..") contents
dirs <- filterM doesDirectoryExist all
dirs' <- mapM getDirList dirs
return (dir : concat dirs')
可能是我一直想念一些真正簡單的東西?有人可以建議嗎?謝謝。
[也許從昨天有關(http://stackoverflow.com/questions/41404647/how-to-implement-search-in-file-system -in-Haskell中)。 – Alec
不是答案,但請注意,您可以使用'listDirectory'來代替'getDirectoryContents'來自動過濾'.'和'..'特殊目錄。 –
是的,我注意到listDirectory。其實我監督了這個功能的過濾。 :) 新年快樂。 – BarbedWire