IO文件属性

时间:2012-11-11 06:58:24

标签: java file attributes

import java.io.File;
class AttriDemo{

    public static void main(String args[]){
        File f1 = new File("FileIO/file.txt");
        System.out.println("File name           : " + f1.getName());
        System.out.println("File path           : " + f1.getPath());
        System.out.println("File AbsPath        : " + f1.getAbsolutePath());
        System.out.println("File parent         : " + f1.getParent());
        f1.setWritable(true);
        if(f1.canWrite())
        {
            System.out.println("File is Writeable");
        }
        else
        {
            System.out.println("File is not Writeable");
        }
        if(f1.canRead())
        {
            System.out.println("Is readable");
        }
        else
        {
            System.out.println("File is not readable");
        }
    }
}

我的文件在实际中是可读写的......

然后我尝试将其显式设置为Writable但仍然输出显示它,因为文件不可写!!

输出:

....
The file is not writable.
The file is not readable.

File f1 = new File("D:/javaProgs/FileIO/AttriDemo.java");

这样做有助于解决问题。 但有人可以解释一下吗?我的意思是该文件位于同一目录中,上面的语句运行得很好。例如getName()getParent()

1 个答案:

答案 0 :(得分:1)

愚蠢的是你可以创建一个File对象,无论你指定的路径是否存在,你都可以调用该对象上的所有getParentgetPath函数。

您可以创建一个不受真实文件支持的File对象,原因有多种,例如检查它是否存在,或者创建由该对象路径和名称指定的文件。

您可以使用File.exists()查看文件系统上是否确实存在文件。