我有一个目录(jars),其中包含许多具有不同创建日期的.jar文件。我尝试使用以下代码按日期升序/降序进行排序,但不起作用。
Jar=[]
Date createdDate = new Date()
path = "/home/users/DIT/jars/"
new File(path).eachFileMatch(~/.*.jar/) {
Jar.add(it.getName())
}
return Jar.sort{it.createdDate}
我尝试了这些,但没有一个可以正常工作:
return Jar.sort{it.createdDate}
//不按日期排序return Jar.sort{-it.createdDate}
//不按日期排序return Jar.sort{createdDate}
//仅按日期排序1个文件(最后修改的jar),其他按随机顺序排列return Jar.sort{ a,b -> b.lastModified() <=> a.lastModified() }
//不按日期排序return Jar.sort{a,b-> b.createdDate<=>a.createdDate}}
//不按日期排序答案 0 :(得分:1)
文件对象上没有属性createdDate
但是有一种lastModified()
方法
所以这应该起作用:
Jar=[]
path = "/11/server/wso2ei-6.3.0/lib/"
new File(path).eachFileMatch(~/.*.jar/) {
Jar.add(it)
}
return Jar.sort{it.lastModified()}
如果您只想返回姓名:
return Jar.sort{it.lastModified()}.collect{it.name}