JFilleChooser class can be used to open the dialog box for opening or saving file or folder. Different uses of this class have been shown in the tutorial. Create a Java project and add a java class named FileChooser to check the use of the JFileChooser.
Display Open Dialog box for selecting file:
Add the following required modules to use JFileChooser for opening the dialog box.
//Import the required modules
import java.io.File;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileSystemView;
Add the following content into the main() method to open dialogue box for opening file and folder.
//Create an object of JFileChooser
JFileChooser fc = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
        
//Open the dialog box
int returnValue = fc.showOpenDialog(null);
        
//Check which button is selected
if (returnValue == JFileChooser.APPROVE_OPTION) {
    //Assign the selected file
    File selectedFile = fc.getSelectedFile();
    //Print the path in the console
    System.out.println(selectedFile.getAbsolutePath());
}
Display Open Dialog box for selecting folder:
Add the following required modules to use JFileChooser for opening dialog box.
//Import the required modules
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileSystemView;
Add the following content into the main() method to open dialogue box for opening folder.
//Create an object of JFileChooser
JFileChooser fc = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
//Set the title of the dialog
fc.setDialogTitle("Select directory to save the file: ");
//Set the selection mode
fc.setFileSelectionMode(JFileChooser.DIRECTORIES_ONLY);
        
//Display the dialog box
int returnValue = fc.showSaveDialog(null);
        
//Check which button is selected
if (returnValue == JFileChooser.APPROVE_OPTION) 
{
    //Check the selected item is directory or not
    if (fc.getSelectedFile().isDirectory()) 
    {
         //Print the selected directory in the console
	 System.out.println("You selected the directory: " + fc.getSelectedFile());
    }
}
Display Open Dialog box for selecting files and folders:
Add the following required modules to use JFileChooser for opening the dialog box.
//Import the required modules
import java.io.File;
import java.util.Arrays;
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileSystemView;
Add the following content into the main() method to open dialogue box for opening files and folders.
//Create an object of JFileChooser
JFileChooser fc = new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
//Set the title of the dialog
fc.setDialogTitle("Select multiple files and folder");
//Enable the multiple election 
fc.setMultiSelectionEnabled(true);
//Set the file selection mode
fc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES);
//Display the dialog box
int returnValue = fc.showOpenDialog(null);
//Check which button is selected
if (returnValue == JFileChooser.APPROVE_OPTION) 
{
    //Store the files and folders in an array
    File[] files = fc.getSelectedFiles();
    
    System.out.println("Selected folders are:\n");
    //Read the array and print the folder list
    Arrays.asList(files).forEach(x -> {
          //Check the value is folder or not
          if (x.isDirectory()) 
          {
               System.out.println(x.getName());
          }
    });		
            
    System.out.println("Selected files are\n");
    //Read the array and print the file list
    Arrays.asList(files).forEach(x -> {
         //Check the value is file or not
         if (x.isFile()) {
              System.out.println(x.getName());
         }
    });
}
Display Open Dialog box for selecting text files:
Add the following required modules to use JFileChooser for opening the dialog box.
import javax.swing.JFileChooser;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.filechooser.FileSystemView;
Add the following content into the main() method to open dialogue box for opening files and folders.
//Create an object of JFileChooser
JFileChooser fc= new JFileChooser(FileSystemView.getFileSystemView().getHomeDirectory());
//Set the title of the dialog
fc.setDialogTitle("Select a text file");
//Disable the selection of all types of files
fc.setAcceptAllFileFilterUsed(false);
//Set the filtering of text files only
FileNameExtensionFilter filter = new FileNameExtensionFilter("Text Files", "txt");
fc.addChoosableFileFilter(filter);
//Display the dialog box
int returnValue = fc.showOpenDialog(null);
//Check which button is selected
if (returnValue == JFileChooser.APPROVE_OPTION) {
   System.out.println(fc.getSelectedFile().getPath());
}
Hope, you will be able to work with the file browsing dialog box after practicing the above examples.