рд░реВрд╕реА рдореЗрдВ рдХрд╣реАрдВ рднреА рдПрдХ рд╡реНрдпрд╛рдЦреНрдпрд╛рддреНрдордХ рд╡рд┐рд╡рд░рдг рдирд╣реАрдВ рдорд┐рд▓рд╛ рд╣реИ, рдХрд┐рд╕
рддрд░рд╣ рдХреА рдЬрд╛рдирд╡рд░
Files.walkFileTree () , рдФрд░ рдЗрд╕реЗ рдПрдХ рдЪреАрдЦрд╝ рдХреЗ рд╕рд╛рде рдорд╣рд╛рд░рдд рд╣рд╛рд╕рд┐рд▓ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд╛рдж рдореЗрдВ рдирд┐рдХрд▓рд╛, рдПрдХ рд╕рд░рд▓ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛, рдореИрдВрдиреЗ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдкрд┐рдирд┐рдВрдЧ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд╕рд╛рде рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛, рдЬреЛ рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрд╛рдж рдЖрдпрд╛ред
WalkFileTree () рд╡рд┐рдзрд┐ рдЖрдкрдХреЛ рдкрде рдФрд░ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдПрдХ рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╛рд░рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдФрд░ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рдкреЗрдбрд╝ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИ ...
рджреЛ рд╡рд┐рдзрд┐ рд╣рд╕реНрддрд╛рдХреНрд╖рд░Files.walkFileTree(Path start, FileVisitor<? super Path> visitor); Files.walkFileTree(Path start, Set<FileVisitOption> options, int maxDepth, FileVisitor<? super Path> visitor);
рдЬрд╣рд╛рдБ
рдкрде рдкреНрд░рд╛рд░рдВрдн - рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЬрд┐рд╕рдореЗрдВ рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рд╣реИ,
FileVisitor рд╡рд┐рдЬрд┐рдЯрд░ - FileVisitor рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд╡рд░реНрдЧ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рдпрд╛ SimpleFileVisitor () рд╕реЗ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рдорд┐рд▓рд╛ред рдмрд╛рдж рдореЗрдВ, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдЬрдм рдЖрдкрдХреЛ рд╕рднреА FileVisitor () рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИ, рдЬрд┐рд╕ рдкрд░ рдереЛрдбрд╝реА рджреЗрд░ рдмрд╛рдж рдЪрд░реНрдЪрд╛ рдХреА рдЬрд╛рдПрдЧреА (рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ),
рд╕реЗрдЯ рдХрд░реЗрдВ <\ FileVisitOption> рд╡рд┐рдХрд▓реНрдк - рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдЬреЛ рд░реЗрдВрдЧрддреЗ рд╕рдордп рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ,
maxDepth - рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рдкрд╛рд░рд┐рдд рд╣реЛрдиреЗ рдХреА рдЧрд╣рд░рд╛рдИред
рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдЙрди рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬреЛ рдЬрд▓реНрджреА рдпрд╛ рдмрд╛рдж рдореЗрдВ рдХрд╛рдо рдореЗрдВ рдЖрдПрдВрдЧреЗредрдореИрдХреНрд╕рдбреЗрдкрде - рдЯреНрд░реИрд╡рд░реНрд╕рд▓ рдбреЗрдкреНрдеред = 0 рдкрд░, рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛, = MAX_VALUE рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрдзрд┐рдХрддрдо рдЧрд╣рд░рд╛рдИ рдХреА рдЬрд╛рдВрдЪ рдХреА рдЬрд╛рдПрдЧреА, рдХреНрд░рдорд╢рдГ maxDepth = 3 рдХреЗ рд╕рд╛рде, рдорд╛рд░реНрдЧ 3 рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ "рдиреАрдЪреЗ" рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред
FileVisitOption - enum рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬреЛ рдпрд╣ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдХреНрд░реЙрд▓ рдХрд░рддреЗ рд╕рдордп рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХреЛ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд▓рд┐рдВрдХ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, FileVisitOption.FOLLOW_LINKS рдирд┐рд░реНрджрд┐рд╖реНрдЯ рд╣реИ)ред
FileVisitor - рдПрдХ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдЬрд┐рд╕рдореЗрдВ 4 рд╡рд┐рдзрд┐рдпрд╛рдБ рд╣реИрдВ:
1) FileVisitResult preVisitDirectory (T dir, BasicFileAttributes attrs) IOException рдлреЗрдВрдХрддрд╛ рд╣реИ;рд╡рд░реНрддрдорд╛рди рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, attrs рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЖрдк рдбреЗрдЯрд╛ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ:
lastModifiedTime (),
lastAccessTime (),
рдирд┐рд░реНрдорд╛рдг рд╕рдордп (),
isRegularFile () - рдпрджрд┐ рд╣рдорд╛рд░реЗ рд╕рд╛рдордиреЗ рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рд╣реИ рддреЛ рд╕рдЪ рд╣реИ,
isDirectory () - рд╕рдЪ рд╣реИ рдЕрдЧрд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╣реИ
isSymbolicLink () - рд╕рддреНрдп рдпрджрд┐ рдСрдмреНрдЬреЗрдХреНрдЯ рдПрдХ рд▓рд┐рдВрдХ рд╣реИ,
isOther () - рд╕рд╣реА рд╣реИ рдпрджрд┐ рдкреНрд░рд╢реНрди рдореЗрдВ рдСрдмреНрдЬреЗрдХреНрдЯ рди рддреЛ рдлрд╝рд╛рдЗрд▓ рд╣реИ, рди рд╣реА рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рд╣реИ, рди рд╣реА рд▓рд┐рдВрдХ рд╣реИ,
size () - рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ рд╕рд╛рдЗрдЬ рдФрд░ рд▓реМрдЯрд╛рддрд╛ рд╣реИ
fileKey () - рдлрд╝рд╛рдЗрд▓ рдХреБрдВрдЬреА рдпрд╛ рдирд▓ рджреЗрддрд╛ рд╣реИ;
рдпрджрд┐ рдЖрдк рдХреНрд░реЙрд▓ рдХреЗ рджреМрд░рд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдпрд╣ рдирд╣реАрдВ рднреВрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкреНрд░рд╛рд░рдВрдн рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рднреА рдХреБрд▓ рд░рд╛рд╢рд┐ рдореЗрдВ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ред
2) FileVisitResult visitFile (T рдлрд╝рд╛рдЗрд▓, BasicFileAttributes attrs) IOException рдлреЗрдВрдХрддрд╛ рд╣реИ;рд╡рд░реНрддрдорд╛рди рдлрд╝рд╛рдЗрд▓ рдкрд░ рдЬрд╛рддреЗ рд╕рдордп рдХрдИ рддрд░реАрдХреЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЖрдк рдЗрд╕рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЦреБрджрд╛рдИ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЦреЛрдЬ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдШрдЯрдирд╛рдУрдВ рдХреЛ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдлрд┐рд░ рдЕрдВрддрд┐рдо рдпрд╛рддреНрд░рд╛ рдХреА рддрд╛рд░реАрдЦ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдлрд╝рд╛рдЗрд▓ рдХреЛ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХрд╛ рдЖрдХрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрд░реЙрд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЖрдХрд╛рд░ рдЬреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВ)
рдЙрджрд╛рд╣рд░рдг public class MyFileVisitor extends SimpleFileVisitor<Path> { String partOfName; String partOfContent; @Override public FileVisitResult visitFile(Path file, BasicFileAttributes attrs) throws IOException { boolean containsName = true; if(partOfName!=null && !file.getFileName().toString().contains(partOfName)) containsName = false; String content = new String(Files.readAllBytes(file)); boolean containsContent = true; if(partOfContent!=null && !content.contains(partOfContent)) containsContent = false; if(containsName && containsContent) foundFiles.add(file); return FileVisitResult.CONTINUE; }
рдЗрд╕ рдЙрджрд╛рд╣рд░рдг рдореЗрдВ, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рдкреЗрдбрд╝ рдХреЛ рдЯреНрд░реЗрд╕ рдХрд░рддреЗ рд╕рдордп, рдкреНрд░рддреНрдпреЗрдХ рдлрд╝рд╛рдЗрд▓ рдХреЛ 2 рдШрдЯрдирд╛рдУрдВ рдХреЗ рдПрдХ рд╕рд╛рде рдирд┐рд╖реНрдкрд╛рджрди рдХреЗ рд▓рд┐рдП рдЬрд╛рдВрдЪрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдореЗрдВ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реИ, рдФрд░ рдХреНрдпрд╛ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ рд╣реИрдВред рдЬрдм рджреЛрдиреЛрдВ рд╢рд░реНрддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдкрд░рд┐рдгрд╛рдореА рд╢реАрдЯ рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдХреНрд░реЙрд▓ рдЬрд╛рд░реА рд░рд╣рддрд╛ рд╣реИ;
рдпрд╛ рд╡рд┐рдЬрд╝рд┐рдЯрдлрд╛рдЗрд▓ рд╡рд┐рдзрд┐
рдХреЗ рдЕрдзрд┐рднрд╛рд░ рдХрд╛ рдПрдХ рдФрд░
рдЙрджрд╛рд╣рд░рдг @Override public FileVisitResult visitFile(Path path, BasicFileAttributes attrs) throws IOException { if(path.toString().endsWith(".rar") || path.toString().endsWith(".zip")) archived.add(path.toString()); return FileVisitResult.CONTINUE; }
рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рдкрд░ рдЬрд╛рддреЗ рд╕рдордп рдЯреНрд░реА рдЯреНрд░реИрд╡рд░реНрд╕рд▓ рдХреЗ рджреМрд░рд╛рди рдкреНрд░реЛрдЧреНрд░рд╛рдо, рдЕрдЧрд░ рдпрд╣ рдПрдХ рдЬрд╝рд┐рдк рдпрд╛ рдЖрд░рдПрдЖрд░ рд╕рдВрдЧреНрд░рд╣ рд╣реИ, рддреЛ рд╕рдВрдЧреНрд░рд╣ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕реВрдЪреА рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЕрдкрдирд╛ рдкрддрд╛ (рдкрде) рдЬреЛрдбрд╝рддрд╛ рд╣реИ;
3) FileVisitResult visitFileFailed (рдЯреА рдлрд╝рд╛рдЗрд▓, IOException exc) IOException рдлреЗрдВрдХрддрд╛ рд╣реИ;рдпрд╣ рд╡рд┐рдзрд┐ рддрдм рдХрд╛рдо рдореЗрдВ рдЖ рд╕рдХрддреА рд╣реИ рдЬрдм рдХрд┐рд╕реА рдлрд╝рд╛рдЗрд▓ рддрдХ рдкрд╣реБрдБрдЪ рдЧрд▓рдд рд╣реИ + рдпрд╣ "рдЕрдкрд╡рд╛рдж рдХреЛ рдлреЗрдВрдХ рд╕рдХрддрд╛ рд╣реИ"ред рдмрд╛рдХреА рдХреЛ рдУрд╡рд░рд░рд╛рдЗрдб рдПрдиреЛрдЯреЗрд╢рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕рд┐рдЦрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░реЗрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдПрдХреНрд╕реЗрд╕ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рдерд╛;
рдЙрджрд╛рд╣рд░рдг @Override public FileVisitResult visitFileFailed(Path path, IOException exc) throws IOException { failed.add(path.toString()); return FileVisitResult.SKIP_SUBTREE; }
рдкрде рддрдХ рдкрд╣реБрдВрдЪрдиреЗ рдХреЗ рдЕрд╕рдлрд▓ рдкреНрд░рдпрд╛рд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдЗрд╕ рдкрде рдХреЛ рд╕рдорд╛рди рд▓реЛрдЧреЛрдВ рдХреА рдЕрд╕рдлрд▓ рд╕реВрдЪреА рдореЗрдВ рдПрдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд░рдо рдЕрдкрдиреЗ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдкрд░ рдЖрдП рдмрд┐рдирд╛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ;
4) FileVisitResult postVisitDirectory (T dir, IOException exc) IOException рдлреЗрдВрдХрддрд╛ рд╣реИ;рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЖрдиреЗ рдХреЗ рдмрд╛рдж рдЬреЛ рдХреБрдЫ рднреА рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЙрд╕реЗ рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЗ рдЕрдзрд┐рднрд╛рд░ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЬрд╛рдиреЗ рдФрд░ рдЙрд╕рдореЗрдВ рдореМрдЬреВрдж рд╕рднреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдирд╖реНрдЯ рдХрд░рдиреЗ рд╕реЗ, рдпрд╣ рд╡рд┐рдзрд┐ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рднреА рдирд╖реНрдЯ рдХрд░ рд╕рдХрддреА рд╣реИ (рд╣рдореЗрдВ рдпрд╛рдж рд╣реИ рдХрд┐ Files.delete (Path dir) рдХреЗрд╡рд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИ, рдпрджрд┐ рдпрд╣ рдЦрд╛рд▓реА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЗрдВ рдирд╣реАрдВ рд╣реИрдВ)ред
рдЙрджрд╛рд╣рд░рдг @Override public FileVisitResult postVisitDirectory(Path path, IOException exc) throws IOException { Files.delete(path); return FileVisitResult.CONTINUE; }
рдЙрдкрд░реЛрдХреНрдд рд╕рднреА рд╡рд┐рдзрд┐рдпрд╛рдБ рдЙрд╕ рд╡рд╕реНрддреБ рдХреЗ "рд╡рд┐рдЬрд╝рд┐рдЯ рдкрд░рд┐рдгрд╛рдо" (FileVisitResult) рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдХреЗ рдкреВрд░реА рдХреА рдЬрд╛рддреА рд╣реИрдВ рдЬреЛ рдХрд┐ рдПрдирдо рд╕реЗрдЯ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИрдВ рдФрд░ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рди рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ:
CONTINUE
- рдкреЗрдбрд╝ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЬрд╛рд░реА рд╣реИ;TERMINATE
- рдЯреНрд░реА рдЯреНрд░реИрд╡рд░реНрд╕рд▓ рд╕рдорд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ;SKIP_SUBTREE
- рдЗрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЬрд╛рдП рдмрд┐рдирд╛, рдмрд╛рдпрдкрд╛рд╕ рдХрд░рдирд╛ рдЬрд╛рд░реА рд░рдЦрддрд╛ рд╣реИ;SKIP_SIBLINGS
- рдЗрд╕ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ "рд░рд┐рд╢реНрддреЗрджрд╛рд░реЛрдВ" рдХреЛ рдХреНрд░реЙрд▓ рдХрд░рдиреЗ рд╕реЗ рдмрд╛рд╣рд░ SKIP_SIBLINGS
;