Java IO 创建只读文件

在 java 中,使文件只读是非常容易的。在本教程中,我们将学习以下三点。

1)如何使文件只读

2)如何检查现有文件是否处于只读模式

3)如何在 java 中创建可写的只读文件。

将文件属性更改为只读

要使文件只读,我们可以使用File类的setReadOnly()方法。它返回一个布尔值,我们可以进一步验证操作是否成功,就像我在下面的程序中一样。正如您在下面的程序中看到的那样,我将文件属性更改为只读取我的计算机“C 盘”中存在的文件Myfile.txt

import java.io.File;
import java.io.IOException;

public class ReadOnlyChangeExample
{

    public static void main(String[] args) throws IOException
    {   
        File myfile = new File("C://Myfile.txt");
        //making the file read only
        boolean flag = myfile.setReadOnly();    
        if (flag==true)
        {
           System.out.println("File successfully converted to Read only mode!!");
        }
        else
        {
           System.out.println("Unsuccessful Operation!!");
        }
    }
}

输出:

File successfully converted to Read only mode!!

检查文件是可写还是只读

为了检查文件属性,我们可以使用文件类的canWrite()方法。如果文件是可写的,则此方法返回true,否则返回false。当我在已经设置为仅在之前的程序中读取的文件Myfile.txt上执行操作时,我将输出为"File is read only"

import java.io.File;
import java.io.IOException;

public class CheckAttributes
{
    public static void main(String[] args) throws IOException
    {   
        File myfile = new File("C://Myfile.txt");   
        if (myfile.canWrite())
        {
           System.out.println("File is writable.");
        }
        else
        {
           System.out.println("File is read only.");
        }
    }
}

输出:

File is read only.

如何在 java 中创建可写的只读文件

要将只读文件设置为可写文件,我们可以使用setWritable()方法。此方法也可用于使文件只读。
file.setWritable(true):使文件可写。
file.setWritable(false):使文件只读。

import java.io.File;
import java.io.IOException;

public class MakeWritable
{

    public static void main(String[] args) throws IOException
    {   
        File myfile = new File("C://Myfile.txt");
        //changing the file mode to writable
        myfile.setWritable(true);
        if (myfile.canWrite())
        {
           System.out.println("File is writable.");
        }
        else
        {
           System.out.println("File is read only.");
        }
    }
}

输出:

File is writable.
赞(0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址