Open In App

java.nio.file.FileSystems Class in Java

Improve
Improve
Like Article
Like
Save
Share
Report

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


Last Updated : 21 Apr, 2021
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads