获取给定目录中文件列表的更好方法

当我需要处理给定目录中的文件时,我总是采用以下方式,我认为这很麻烦:

    this_dir = Dir.pwd
    filepath = File.join(this_dir, "directory")
    file_list = Dir[File.join(filepath, "*.txt")]

我知道下面的代码返回一个文件名数组。据说该目录中只有一个文件,我习惯使用的方式是:

    File.basename(file_list[0])

是否有更好更整洁的方法来获取目录中的文件列表,以便我可以对这些文件做任何我想做的事情?

回答

这里有一些注意事项。在许多情况下,文件操作被假定为基于您当前的工作目录工作Dir.pwd,因此不需要指定。

找到第一个匹配文件的最简单方法是:

Dir['directory/*.txt'].first

file_list除了您不需要所有的序言之外,您的方法在这里没有什么收获。

  • There's also `Dir['*.txt', base: 'directory']` which returns just the filenames.

以上是获取给定目录中文件列表的更好方法的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>