假设我有这样的事情:
new File("test").eachFile() { file->
println file.getName()
}
这将打印 test
目录中每个文件的完整文件名。有没有一种 Groovy 方法来获取没有任何扩展名的文件名? (或者我回到了正则表达式领域?)
最佳答案
我相信最时髦的方法是:
file.name.lastIndexOf('.').with {it != -1 ? file.name[0..<it] : file.name}
或使用简单的正则表达式:
file.name.replaceFirst(~/\.[^\.]+$/, '')
还有一个用于该目的的 apache commons-io java lib,如果您使用 maven,您可以轻松依赖它:
org.apache.commons.io.FilenameUtils.getBaseName(file.name)
关于java - groovy 是否有一种简单的方法来获取没有扩展名的文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1569547/