我正在尝试使用每个文件夹中包含的文件构建一个文件夹数组。因此,如果您的目录结构是:
DirA
|- FileA
\- FileB
DirB
\- FileC
我得到了这个数组:
files = ["DirA/FileA", "DirA/FileB", "DirB/FileC"]
我正在尝试构建这样的哈希
{DirA => [FileA, FileB], DirB => [FileC]}
现在我正在以我认为相当非 Rubyish 的方式进行操作(假设 String 定义了一个获取父目录的方法):
h = {}
files.each do |f|
parent = f.getParentDir
if not h[parent] then h[parent] = [] end
h[parent].push f
end
有没有更优雅的方式?