The java.nio.file.SimpleFileVisitor Class is used to visit all the files in a directory and to re-throw I/O exceptions whenever an I/O error occurs.
Class declaration :
public class SimpleFileVisitor<T>
extends Object
implements FileVisitor<T>
Constructor:
- protected SimpleFileVIsitor(): Creates a new object of SimpleFileVisitor class.
Method:
Method | Description |
---|
public FileVisitResult preVisitDirectory(T directory, BasicFileAttributes attributes) | This method is invoked for this directory before the entries are visited. This method returns to CONTINUE unless overridden. |
public FileVisitResult postVisitDirectory(T directory, IOException e) | This method is invoked for this directory after the entries are visited. This method returns to CONTINUE unless overridden. |
public FileVisitResult visitFile(T file, BasicFileAttributes attributes) | This method is invoked for this file before in a directory. This method returns to CONTINUE unless overridden. |
public FileVisitResult visitFileFailed(T file, IOException exception) | This method is invoked for a file that could not be visited. This method re-throws the I/O exception unless overridden. This was the exception that prevented the file from being visited. |
1.public FileVisitResult preVisitDirectory(T directory, BasicFileAttributes attributes): This method is invoked for this directory before the entries in the are visited. This method returns to CONTINUE unless overridden.
Parameters:
directory- reference to this directory.
attributes- attributes of this directory.
Returns: the file visit result.
Throws: I/O Exception.
2.public FileVisitResult postVisitDirectory(T directory, IOException e): This method is invoked for this directory after the entries in the are visited. This method returns to CONTINUE unless overridden.
Parameters:
directory- reference to this directory.
e- NULL if there is no error in this directory's
iteration,else the I/O exception.
Returns: the file visit result.
Throws: I/O Exception.
3.public FileVisitResult visitFile(T file, BasicFileAttributes attributes): This method is invoked for this file before in a directory. This method returns to CONTINUE unless overridden.
Parameters:
file- reference to this file.
attributes- attributes of this file.
Returns: the file visit result.
Throws: I/O Exception
4.public FileVisitResult visitFileFailed(T file, IOException exception): This method is invoked for a file that could not be visited. This method re-throws the I/O exception unless overridden. This was the exception that prevented the file from being visited.
Parameters:
file - reference to this file.
exc - exception that prevented the file from being visited.
Returns: the file visit result.
Throws: I/O Exception
Java
import java.io.IOException;
import java.nio.file.*;
import java.nio.file.attribute.*;
public class FileVisitorDemo
extends SimpleFileVisitor<Path> {
public FileVisitResult
visitFile(Path file, BasicFileAttributes atts)
throws IOException
{
if (file.getFileName().toString().endsWith(
".txt" )) {
Files.delete(file);
}
return FileVisitResult.CONTINUE;
}
public FileVisitResult visitFileFailed(Path file,
IOException e)
throws IOException
{
System.err.println( "File could not be visited" );
return FileVisitResult.CONTINUE;
}
public static void main(String args[]) throws Exception
{
FileVisitorDemo visitor = new FileVisitorDemo();
try {
Files.walkFileTree(
Paths.get(
"/Users/abhinavjain194/desktop/visit" ),
visitor);
}
catch (Exception e) {
System.err.print(e.toString());
}
}
}
|
Before running the program

After running the program
