可以使用方法java.io.File.setWritable()将file属性更改为可写。此方法具有单个参数,即布尔值,如果为true则允许文件可写,如果为false则不允许文件可写。另外,如果操作成功,则此方法返回true,否则返回false。
演示此的程序如下所示-
import java.io.File; public class Demo { public static void main(String[] args) { try { File file = new File("demo1.txt"); file.createNewFile(); file.setReadOnly(); System.out.println("The file can be written to? " + file.canWrite()); file.setWritable(true); System.out.println("The file can be written to? " + file.canWrite()); } catch(Exception e) { e.printStackTrace(); } } }
上面程序的输出如下-
输出结果
The file can be written to? false The file can be written to? true
注-在线编译器上的输出可能会有所不同。
现在让我们了解上面的程序。
首先使用java.io.File.setReadOnly()方法将文件的属性更改为只读。然后使用方法java.io.File.setWritable()将文件属性更改为可写。方法java.io.File.canWrite()用于检查文件是否可写。证明这一点的代码片段如下-
try { File file = new File("demo1.txt"); file.createNewFile(); file.setReadOnly(); System.out.println("The file can be written to? " + file.canWrite()); file.setWritable(true); System.out.println("The file can be written to? " + file.canWrite()); } catch(Exception e) { e.printStackTrace(); }