Open In App

File setWritable() method in Java with Examples

Improve
Improve
Like Article
Like
Save
Share
Report

The setWritable() method is a part of File class.The function sets the owner’s or everybody’s permission to Write the abstract pathname. The function is a overloaded function. One function requires two parameters and the other only one.

Function Signature:

public boolean setWritable(boolean a, boolean b)
public boolean setWritable(boolean a)

Function Syntax:

file.setWritable(boolean a, boolean b)
file.setWritable(boolean a)

Parameters: The function is a overloaded function:

  • For the first overload:
    • If a true value is passed as the first parameter then it is allowed to Write the abstract pathname, else it is not allowed to Write the file.
    • If a true value is passed as the second parameter then the Write permission applies to the owner only, else it applies to everyone

    Return value: This function returns a boolean value which states whether the operation succeeded or not.

    Exception: This method throws Security Exception if the function is not allowed write access to the file.

    Below programs will illustrate the use of the setWritable() function

    Example 1: We will try to change the setWritable permission of owner of a existing file in f: directory.




    // Java program to demonstrate the
    // use of setWritable() function
      
    import java.io.*;
      
    public class solution {
        public static void main(String args[])
        {
      
            // try catch block to handle exceptions
            try {
      
                // Create a file object
                File f = new File("f:\\program.txt");
      
                // Check if the Writable permission
                // can be set to new value
                if (f.setWritable(true)) {
      
                    // Display that the Writable permission
                    // is be set to new value
                    System.out.println("Writable permission is set");
                }
                else {
      
                    // Display that the Writable permission
                    // cannot be set to new value
                    System.out.println("Writable permission cannot be set");
                }
            }
            catch (Exception e) {
                System.err.println(e.getMessage());
            }
        }
    }

    
    

    Output:

    Writable permission is set
    

    Example 2: We will try to change the setWritable permission of everyone of a existing file in f: directory.




    // Java program to demonstrate the
    // use of setWritable() function
      
    import java.io.*;
      
    public class solution {
        public static void main(String args[])
        {
      
            // try-catch block to handle exceptions
            try {
      
                // Create a file object
                File f = new File("f:\\program.txt");
      
                // Check if the Writable permission
                // can be set to new value
                if (f.setWritable(true, false)) {
      
                    // Display that the Writable permission
                    // is be set to new value
                    System.out.println("Writable permission"
                                       + " is set");
                }
                else {
      
                    // Display that the Writable permission
                    // cannot be set to new value
                    System.out.println("Writable permission"
                                       + " cannot be set");
                }
            }
            catch (Exception e) {
                System.err.println(e.getMessage());
            }
        }
    }

    
    

    Output:

    Writable permission is set
    

    The programs might not run in an online IDE. please use an offline IDE and set the Parent file of the file



    Last Updated : 30 Jan, 2019
    Like Article
    Save Article
    Previous
    Next
    Share your thoughts in the comments
Similar Reads