IO流技术中的File类

一、File类

        java中我们通过java.io.File类实现对文件的基本属性进行操作,包括文件属性读取,文件创建,文 件删除,文件添加等等。File是一个类,那么在使用的时候就需要创建对象,但是File类的实例是不可变 的,也就是说,一旦创建,由File对象表示的抽象路径名将永远不会改变,也就是说利用构造方法,指定 路径名、文件名等来构造File类的对象,之后调用该对象的createNewFile()方法就可以创建出相应的文 件。 File类的对象可以代表一个具体的文件路径,在实际运用种,可以使用绝对路径也可以使用相对路径。

二、File工具类构造方法

构造方法说明
new File("d:\test\test.txt")指定的目录下建立文件,如果路径不存在,则建立虚拟file对象
new File("test.txt")在当前项目根目录下建立文件 test.txt
new File("d:\test")test可以是个目录,也可能是个文件
new File("d:\test\","test.dat")指定目录下,建立指定的文件
File f1=new File("d:\\test\\test.txt"); //指定的目录下建立文件,如果路径不存在,则建立虚拟file对象
File f2=new File("test.txt"); //在当前项目根目录下建立文件 test.txt
File f3=new File("d:\\test");//test可以是个目录,也可能是个文件
File f4=new File("d:\\test\\","test.dat");//指定目录下,建立指定的文件

       1. File(String pathname) 通过将给定路径名字符串转换为抽象路径名来创建一个新 File 实例。如果给定字符串是空字符串,那 么结果是空抽象路径名。

       2. File(File parent, String child) 根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例,如果 parent 为 null,则创建一个新的 File 实例,这与调用给定 child 路径名字符串的单参数 File 构造方法的 效果一样。否则,parent 抽象路径名用于表示目录,child 路径名字符串用于表示目录或文件。如果 child 路径名字符串是绝对路径名,则用与系统有关的方式将它转换为一个相对路径名。如果 parent 是空抽象路径名,则通过将 child 转换为抽象路径名,并根据与系统有关的默认目录解析结果来创建 新的 File 实例。否则,将每个路径名字符串转换为一个抽象路径名,并根据父抽象路径名解析子抽象 路径名。

       3. File(String parent, String child) parent指定路径(父目录),可以是File类对象也可以是字符串,child中也可以加入路径层级,但要 注意,所用的路径必须存在,不存在的路径不会新建。

       4. File(URI uri) 通过将给定的 file: URI转换为一个抽象路径名来创建一个新的 File 实例,这个一般用的比较少。

三、常用方法

方法说明
File.delete()删除文件或空目录文件夹目录
File.createNewFile()创建一个新的空文件
File.mkdir()创建一个新的空文件夹
File.mkdirs()批量建立多级目录
File.list()获取指定目录下的文件和文件夹名称
File.listFiles()获取指定目录下的文件和文件夹对象
File.exists()文件或者文件夹是否存在
String getParent()返回父目录的路径名字符串;如果没有指定父目录,则返回 null
File getParentFile()返回父目录File对象
String getName()返回文件或文件夹的名称
String getAbsolutePath()获取绝对路径
String getPath()返回路径名字符串
long lastModified()返回文件最后一次被修改的时间
long length()获取长度,字节数
boolean canRead()判断是否可读
boolean canWrite()判断是否可写
boolean isHidden()判断是否隐藏
long getFreeSpace()返回分区中未分配的字节数
long getTotalSpace()返回此文件分区大小
long getUsableSpace()返回占用字节数
nt hashCode()文件哈希码

四、File属性的常用方法

方法说明
static File[] listRoots()列出可用的文件系统根
boolean renameTo(File dest)重命名,剪切粘贴文件,移动 文件
boolean setExecutable(boolean executable)设置执行权限
boolean setExecutable(boolean executable, boolean ownerOnly)设置其他所有用户的执行权限
boolean setLastModified(long time)设置最后一次修改时间
boolean setReadable(boolean readable)设置读权限
boolean setReadable(boolean readable, boolean ownerOnly)设置其他所有用户的读权限
boolean setWritable(boolean writable)设置写权限
boolean setWritable(boolean writable, boolean ownerOnly)设置所有用户的写权限

五、File类总结

       1. File类的直接父类是Object类。一个File类的对象,表示了磁盘上的文件或目录。如果你创建文 件或者文件夹忘了写盘符路径,那么,默认在项目路径下。

       2. 在不同的计算机操作系统中,路径分割符号是不同的。windows系统的路径分隔符【\】与 Unix系统的路径分隔符【/】不一样。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值