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