在groovy中仅接收姓氏名称

时间:2019-05-14 14:33:57

标签: groovy

我在groovy中有以下脚本,该脚本返回位于某些父目录中的目录的绝对路径:

def OPERATOR1 = 'HeatEnergy | 316'
def folder = "C:\\WinPackages-Development";
def (dir1, value2) = OPERATOR1.tokenize( ' | ' )
def finaldir = "${folder}\\${dir1}\\"
def baseDir = new File(finaldir);
files = baseDir.listFiles();
String s = files.toString()
str = s.split(',');
def results = []
str.each{ key -> 
results = [*results, key]
}  
return results

输出为:

[C:\WinPackages-Development\HeatEnergy\Terminal]
[C:\WinPackages-Development\HeatEnergy\Cashier]

任何人都可以提示我,我需要更改什么,以便仅接收没有方括号的姓氏,例如:

Terminal
Cashier

1 个答案:

答案 0 :(得分:1)

如果您持有File,则可以在其上使用.name。但是现在,您使用该.toString()破坏了任何结构。只需使用:

def results = baseDir.listFiles()*.name

获取所有文件名