Scala:根据文件名和时间戳模式列出大于文件的文件

Scala : List the files which are greater than a file based on its name with timestamp pattern in it

我必须根据 scala 命名模式中的时间戳列出所有大于特定文件的文件。下面是示例。

可用文件:

log_20200601T123421.log
log_20200601T153432.log
log_20200705T093425.log
log_20200803T049383.log

条件文件:

log_20200601T123421.log - 我需要列出所有大于等于 20200601T123421 的文件名。结果是,

输出列表:

log_20200601T153432.log
log_20200705T093425.log
log_20200803T049383.log

如何在scala中实现这个?我正在尝试使用 apache common,但我看不到它大于等于 NameFileFilter。

也许以下代码片段可以作为起点:

import java.io.File

def getListOfFiles(dir: File):List[File] = dir.listFiles.filter(x => x.getName > "log_20200601T123421.log").toList

val files = getListOfFiles(new File("/tmp"))

用于从不同 sub-directories 收集文件的扩展任务:

import java.io.File

def recursiveListFiles(f: File): Array[File] = {
  val these = f.listFiles
  these ++ these.filter(_.isDirectory).flatMap(recursiveListFiles) 
}

val files = recursiveListFiles(new File("/tmp")).filter(x => x.getName > "log_20200601T123421.log")