java.nio.file.FileSystems Class in Java
java.nio.file.FileSystems class acts as a factory for creating new file systems. This class provides methods for creating file systems. This file system act as factories for creating different objects like Path, PathMatcher, UserPrincipalLookupService, and WatchService. This object helps to access the files and other objects in the file system.
Syntax: Class declaration
public final class FileSystems extends Object
Methods of this class is as follows:
Method | Description |
---|---|
getDefault() | This method returns a new default FileSystem. |
getFileSystem(URI uri) | This method returns a reference to an existing FileSystem. |
newFileSystem(Path path, ClassLoader loader) | This method is used to construct a new FileSystem to access the contents of the files of this file system. |
newFileSystem(URI uri, Map<String,?> env) | This method is used to create a new File system using the given URI |
newFileSystem(URI uri, Map<String,?> env, ClassLoader loader) | This method is used to create a new File system using the given URI |
Example 1:
Java
// Java Program to illustrate FileSystems Class by // creating a new file system using getDefault() method and // printing its file stores and root directories // Importing classes from java.nio package // for network linking import java.nio.file.FileStore; import java.nio.file.FileSystem; import java.nio.file.FileSystems; import java.nio.file.Path; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Try block to check for exceptions try { // Create a new file system by // creating object of FileSystem class // using getDefault() method FileSystem filesystem = FileSystems.getDefault(); // Display commands only System.out.println( "File System created successfully" ); System.out.println( "Underlying file stores of this FileSystem :" ); // Printing the underlying file stores of this // FileSystem using for each loop for (FileStore store : filesystem.getFileStores()) { // Print statement System.out.println(store.toString()); } // Display message only System.out.println( "Root directories of this FileSystem :" ); // Printing the root directories of this // FileSystem using for each loop for (Path rootdir : filesystem.getRootDirectories()) { // Print statement System.out.println(rootdir.toString()); } } // Catch block to handle the exceptions catch (Exception e) { // Print the exception along with line number // using printStackTrace() method e.printStackTrace(); } } } |
Output:
Example 2:
Java
// Java Program to illustrate FileSystems Class by // creating new file system using newFileSystem() method // Importing URI class from java.net package import java.net.URI; // Importing required file classes from java.nio package import java.nio.file.FileSystem; import java.nio.file.FileSystems; import java.nio.file.Path; import java.nio.file.Paths; // Importing Map and HashMap classes from java.util package import java.util.HashMap; import java.util.Map; // Main class public class GFG { // Main driver method public static void main(String[] args) { // Try block to check for exceptions try { // Creating object of Map class // Declaring object of string types Map<String, String> env = new HashMap<>(); // Getting path of zip file Path zipPath = Paths.get( "ZipFile.zip" ); // Creating URI from zip path received URI Uri = new URI( "jar:file" , zipPath.toUri().getPath(), null ); // Create new file system from uri FileSystem filesystem = FileSystems.newFileSystem(Uri, env); // Display message for better readability System.out.println( "FileSystem created successfully" ); // Checking if file system is open or not // using isOpen() method if (filesystem.isOpen()) // Print statement System.out.println( "File system is open" ); else // Print statement System.out.println( "File system is close" ); } // Catch block to handle the exceptions catch (Exception e) { // Print the exception with line number // using the printStack() method e.printStackTrace(); } } } |
Output:
File System created successfully File system is open