#groovy
#groovy
Вопрос:
File lstFile = new File(lstFileName).withWriter{out->
archivedFiles.each {out.println it.name}
}
archivedFiles — это список объектов .. Я получаю сообщение об ошибке, в котором говорится:
Cannot cast object with class 'java.util.ArrayList' to class 'java.io.File'.
Меня интересует только запись имен файлов, содержащихся в списке, во ВНОВЬ созданный файл
Ответ №1:
Это потому, что withWriter
блок по умолчанию возвращает последнюю вещь в блоке (которая является archivedFiles
списком)
Чтобы сделать то, что вы пытаетесь сделать, вам нужно будет сделать:
File lstFile = new File(lstFileName)
lstFile.withWriter{ out ->
archivedFiles.each {out.println it.name}
}
или это тоже должно сработать:
File lstFile = new File( lstFileName ).with { file ->
file.withWriter{ out ->
archivedFiles.each {out.println it.name}
}
file
}