This page was exported from - JPinup Export date: Fri Jun 2 2:37:22 2017 / +0000 GMT Java NIO - Cercare file con walkFileTree Per cercare dei file sul proprio disco, Java NIO ci mette a disposizione il metodo walkFileTree, che prevede tra i parametri una classe che rispecchia il pattern Visitor. Vediamo un esempio in cui cerco nel file system i file che hanno nel nome una certa stringa Definiamo una classe che estende il SimpleFileVisitor e un metodo. import java.io.IOException; import java.nio.file.FileVisitResult; import java.nio.file.Path; import java.nio.file.SimpleFileVisitor; import java.nio.file.attribute.BasicFileAttributes; public class CustomVisitor extends SimpleFileVisitor<Path>{ private String nomeFile; public String getNomeFile() { return nomeFile; } public void setNomeFile(String nomeFile) { this.nomeFile = nomeFile; } public CustomVisitor(String fileName) { nomeFile = fileName; // TODO Auto-generated constructor stub } @Override public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { // TODO Auto-generated method stub if (file.getFileName().toString().contains(nomeFile)){ System.out.println(file.getFileName().toString()); } return super.visitFile(file, attrs); } } Per utilizzare il visitor implementiamo il metodo main. import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class FileFinder { public static void main(String[] args) { // TODO Auto-generated method stub Output as PDF file has been powered by [ Universal Post Manager ] plugin from www.ProfProjects.com | Page 1/2 | This page was exported from - JPinup Export date: Fri Jun 2 2:37:22 2017 / +0000 GMT try { Path startDir = Paths.get("E:\"); CustomVisitor customVisitor = new CustomVisitor("spring"); Files.walkFileTree(startDir, customVisitor); } catch (IOException e) { e.printStackTrace(); } } } Il risultato dei file verrà stampato in console. FileVisitor Output as PDF file has been powered by [ Universal Post Manager ] plugin from www.ProfProjects.com | Page 2/2 |