java基础之io流总结二:File类基本应用

Posted alex-zqzy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java基础之io流总结二:File类基本应用相关的知识,希望对你有一定的参考价值。

File类的概述:

File类是对文件系统中文件以及文件夹进行封装的对象,可以通过对象的思想来操作文件和文件夹。 File类保存文件或目录的各种元数据信息,包括文件名、文件长度、最后修改时间、是否可读、获取当前文件的路径名,判断指定文件是否存在、获得当前目录中的文件列表,创建、删除文件和目录等方法。  

 

File类的构造方法:

public File(String pathname)  //文件的绝对路径
public File(URI uri)  //文件的URI地址

public File(String parent, String child)  //指定父文件绝对路径、子文件绝对路径
public File(File parent, String child)  //指定父文件、子文件相对路径


//下面这两个是File类中私有的构造函数,外面不能调用
private File(String child, File parent)  
private File(String pathname, int prefixLength) 

一般情况下,我们只用到第一个构造方法。

 

File类的其他功能方法:

  创建文件:

        File file = new File(path);
        boolean b = file.createNewFile();

  创建目录文件夹:

        File file = new File(path);
        boolean b = file.mkdir();

  创建多级目录文件夹:

        File file = new File(path);
        boolean b = file.mkdirs();

  判断方法:

boolean file.exists() //文件是否存在

boolean file.isFile() //是否是文件

boolean file.isDirectory() //是否是目录

boolean file.isHidden()   //是否隐藏(windows上可以设置某个文件是否隐藏)

boolean file.isAbsolute() //是否为绝对路径

boolean file.canRead()  //是否可读

boolean file.canWrite() //是否可写

boolean file.canExecute()  //是否可执行

  获取文件信息:

String file.getName() //获取文件的名字,只是名字,没有路径

String file.getParent() //获取父目录的绝对路径,返回值是一个字符串。如果文件有父目录,那么返回父目录的绝对路径,(比如:`E:cat`) , 如果文件本身就在磁盘的根目录,那么返回磁盘的路径,(比如:`E:`)。

File file.getParentFile() //获取父文件,返回值是一个File对象。

long time = file.lastModified() ; //返回文件最后一次修改的时间
Date dt = new Date(time);

boolean renameTo(File file) //文件命名

long file.length() //返回文件的大小,单位字节

boolean file.delete() //删除文件

String[] file.list() //获取该目录下的所有的文件的名字。如果`file`为文件,返回值为`null`,在使用时记得判空;但是如果`file`为目录,那么返回这个目录下所有文件的名字,只是名字,不含路径;如果`file`是一个空目录,返回一个长度为0的数组;从上面的结果可以看出,`list()` 方法,只是对`file`为目录时有效,当`file`为一个文件的时候,该方法毫无意义。

File[] file.listFiles() //获取该目录下的所有的文件。如果`file`为文件,返回值为`null`,在使用时记得判空;但是如果`file`为目录,那么返回这个目录下所有的文件 ;如果`file`是一个空目录,返回一个长度为0的数组;从上面的结果可以看出,`listFiles()` 方法,只是对`file`为目录时有效,当`file`为一个文件的时候,该方法毫无意义。

 

以上是关于java基础之io流总结二:File类基本应用的主要内容,如果未能解决你的问题,请参考以下文章

JAVA基础之IO流

java IO流 之 FIle类基础

java基础之IO流及递归理解

Java基础之(IO流)

io流函数略解(java_input流)[二]

Java学习笔记之:Java 流