
- Java.io - Home
- Java.io - BufferedInputStream
- Java.io - BufferedOutputStream
- Java.io - BufferedReader
- Java.io - BufferedWriter
- Java.io - ByteArrayInputStream
- Java.io - ByteArrayOutputStream
- Java.io - CharArrayReader
- Java.io - CharArrayWriter
- Java.io - Console
- Java.io - DataInputStream
- Java.io - DataOutputStream
- Java.io - File
- Java.io - FileDescriptor
- Java.io - FileInputStream
- Java.io - FileOutputStream
- Java.io - FilePermission
- Java.io - FileReader
- Java.io - FileWriter
- Java.io - FilterInputStream
- Java.io - FilterOutputStream
- Java.io - FilterReader
- Java.io - FilterWriter
- Java.io - InputStream
- Java.io - InputStreamReader
- Java.io - LineNumberInputStream
- Java.io - LineNumberReader
- Java.io - ObjectInputStream
- Java.io - ObjectInputStream.GetField
- Java.io - ObjectOutputStream
- io - ObjectOutputStream.PutField
- Java.io - ObjectStreamClass
- Java.io - ObjectStreamField
- Java.io - OutputStream
- Java.io - OutputStreamWriter
- Java.io - PipedInputStream
- Java.io - PipedOutputStream
- Java.io - PipedReader
- Java.io - PipedWriter
- Java.io - PrintStream
- Java.io - PrintWriter
- Java.io - PushbackInputStream
- Java.io - PushbackReader
- Java.io - RandomAccessFile
- Java.io - Reader
- Java.io - SequenceInputStream
- Java.io - SerializablePermission
- Java.io - StreamTokenizer
- Java.io - StringBufferInputStream
- Java.io - StringReader
- Java.io - StringWriter
- Java.io - Writer
- Java.io package Useful Resources
- Java.io - Discussion
Java - File setWritable(boolean writeable, boolean ownerOnly) method
Description
The Java File setWritable(boolean writeable, boolean ownerOnly) method is used to set or modify the write permission of a file, with an option to restrict it to the owner only.
If writeable is true, the file is made writeable.
If writeable is false, the file is made readonly(not writeable).
If ownerOnly is true, the permission applies only to the owner of the file.
If ownerOnly is false, the permission applies to all users.
Declaration
Following is the declaration for java.io.File.setWritable(boolean writeable, boolean ownerOnly) method −
public boolean setWritable(boolean writeable, boolean ownerOnly)
Parameters
writeable− true sets the access permission to allow write operations, false denies write operation.
ownerOnly− true sets the write permission only to the owner's write permission; otherwise, it applies to everybody.
Return Value
This method returns true if the operation succeeded, else false.
Exception
SecurityException − If a security manager exists and its method denies write access to the pathnames.
Example - Usage of File setWritable(boolean writeable, boolean ownerOnly) method
The following example shows the usage of Java File setWritable(boolean writeable, boolean ownerOnly) method. We've created a File reference. Then we're creating a File Object using a file path which is present in the given location. Using setWritable() method, we're trying to make the file writeable and getting the result in boolean variable. Then we're printing the status of file as writeable using canWrite() method and result is printed.
FileDemo.java
package com.tutorialspoint; import java.io.File; public class FileDemo { public static void main(String[] args) { File f = null; boolean bool = false; try { // create new File objects f = new File("F:/test.txt"); // set writeable as true for owner bool = f.setWritable(true, true); // prints System.out.println("setWritable() succeeded?: "+bool); // can write bool = f.canWrite(); // prints System.out.print("Can write?: "+bool); } catch(Exception e) { // if any error occurs e.printStackTrace(); } } }
Output
Let us compile and run the above program, this will produce the following result−
setWritable() succeeded?: true Can write?: true
Now, you can check that file is renamed.
Example - Usage of File setWritable(boolean writeable, boolean ownerOnly) method
The following example shows the usage of Java File setWritable(boolean writeable, boolean ownerOnly) method. We've created a File reference. Then we're creating a File Object using a file path which is present in the given location and was made writeable in previous example. Using setWritable() method, we're trying to make the file non-writeable and getting the result in boolean variable. Then we're printing the status of file as writeable using canWrite() method and result is printed.
FileDemo.java
package com.tutorialspoint; import java.io.File; public class FileDemo { public static void main(String[] args) { File f = null; boolean bool = false; try { // create new File objects f = new File("F:/test.txt"); // set writeable as true for all bool = f.setWritable(true, false); // prints System.out.println("setWritable() succeeded?: "+bool); // can write bool = f.canWrite(); // prints System.out.print("Can write?: "+bool); } catch(Exception e) { // if any error occurs e.printStackTrace(); } } }
Output
Let us compile and run the above program, this will produce the following result−
setWritable() succeeded?: true Can write?: true
Example - Setting Write Permission for Owner Only and All Users
The following example shows the usage of Java File setWritable(boolean writeable, boolean ownerOnly) method.
FileDemo.java
package com.tutorialspoint; import java.io.File; public class FileDemo { public static void main(String[] args) { // Create a File object representing an existing file File file = new File("example.txt"); // Check if the file exists if (file.exists()) { // Set writable permission for the owner only if (file.setWritable(true, true)) { System.out.println("File is now writable only by the owner: " + file.getAbsolutePath()); } else { System.out.println("Failed to set write permission for the owner."); } // Set writable permission for all users if (file.setWritable(true, false)) { System.out.println("File is now writable by all users."); } else { System.out.println("Failed to set write permission for all users."); } } else { System.out.println("File does not exist."); } } }
Output
Let us compile and run the above program, this will produce the following result−
File is writeable only by the owner: C:\Users\YourName\example.txt File is now writeable by all users.
Explanation
The program creates a File object for "example.txt".
It first checks if the file exists before modifying its permissions.
It calls setWritable(true, true) to allow only the owner to write to the file.
It then calls setWritable(true, false) to allow all users to write.
It prints messages indicating whether the operations were successful.