Получать только фамилию в Groovy - PullRequest
0 голосов
/ 14 мая 2019

У меня есть следующий скрипт в 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 Ответ

1 голос
/ 14 мая 2019

Если у вас есть File, вы можете использовать .name на нем. Но сейчас вы разрушаете любую структуру с этим .toString(). Просто используйте:

def results = baseDir.listFiles()*.name

чтобы получить все имена файлов

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...