File类 文件操作总结

  • 构造方法

    file(String path)创建一个路径为path的file对象
    file(String path1,String path2)创建一个路径为path1和path2拼接起来的file对象
    file(File file1,String path2)创建一个路径为file1和path2拼接起来的file对象
public class Demo01 {
public static void main(String[] args) throws IOException {
	//File 类三种构造方法
	File f1 = new File("D:\\javaproject\\Java Exercises\\sc");
	File f2 = new File("D:\\javaproject\\Java Exercises", "sc");
	File f3 = new File(f1,"docu");
	System.out.println(f1);
	System.out.println(f2);
	System.out.println(f3);

运行结果:
D:\javaproject\Java Exercises\sc
D:\javaproject\Java Exercises\sc //路径为参数中两个String型相对路径的拼接
D:\javaproject\Java Exercises\sc\docu //路径为参数路径为file型路径和String型路径拼接

  • 常用方法

创建文件

createNewFile():创建一个对应路径的文件

//创建文件对象
	File f4 = new File(f1,"a.txt");  //a.txt
	File f5 = new File("D:\\javaproject\\Java Exercises\\sc\\b.java");//b.java
	//文件对象调用creatNewFile()创建文件
	boolean c1 = f4.createNewFile();
	boolean c2 = f5.createNewFile();
	System.out.println(c1);//打印结果为true即表示文件创建成功
	System.out.println(c2);//打印结果为true即表示文件创建成功

请添加图片描述

创建文件夹

mkdir():创建单级文件夹
mkdirs():创建多级文件夹
第一步:创建文件夹对象
第二步:调用mkdir()创建单级文件夹;调用mkdirs()创建多级文件夹

    //创建单级文件夹 mkdir()
	File f6 = new File("D:\\javaproject\\Java Exercises\\AAA");//先创建文件夹的file对象
	boolean wjj = f6.mkdir();                                  //file对象调用mkdir()创建文件夹
	System.out.println(wjj);                                   //打印结果为true即文件夹创建成功

在这里插入图片描述

    //创建多级文件夹 mkdirs
	File f7 = new File("AAA\\bbb\\ccc");//先创建文件夹的file对象
	boolean wjj2 = f7.mkdirs();         //file对象调用mkdirs()创建多级文件夹
	System.out.println(wjj2);           //打印结果为true即文件夹创建成功

在这里插入图片描述
创建文件夹时要保证创建的文件夹不存在,无法创建已存在的文件夹

删除文件

delete():删除文件或文件夹
删除文件:

    File fa = new File("sc\\a.txt");//创建要删除文件的对象
	boolean delete = fa.delete();//文件对象调用delete()删除文件
	System.out.println(delete);//打印结果为true,删除成功

删除文件夹:

    File fs = new File("sc2");    //创建要删除文件夹的对象
	boolean delete2 = fs.delete();//文件对象调用delete()删除文件夹
	System.out.println(delete2);  //打印结果为true,删除成功

删除的文件夹必须是空文件夹,删除后的文件夹不会经过回收站,无法恢复

重命名文件或文件夹

先创建原文件和重命名后的文件的file对象,然后调用renameTo(File file)方法,方法参数是重命名后文件的对象
重命名时注意不能和文件夹中已有的文件重名,否则重命名失败
在同一个文件夹内重命名:

    File f1 = new File("AAA\\bbb\\ccc");//原文件夹路径
	File f2 = new File("AAA\\bbb\\ddd");//重命名后文件夹路径
	boolean renameTo = f1.renameTo(f2);//调用renameTo()
	System.out.println(renameTo);      //打印结果为true重命名成功

在不同文件夹中重命名相当于剪切:

    File f3 = new File("sc\\docu");//原文件夹路径
	File f4 = new File("AAA\\TTT");//重命名后文件夹路径
	boolean renameTo2 = f3.renameTo(f4);//调用renameTo()
	System.out.println(renameTo2);//打印结果为true重命名成功

重命名文件示例:

	File f5 = new File("sc\\b.java");
	File f6 = new File("sc\\a.java");
	boolean renameTo3 = f5.renameTo(f6);
	System.out.println(renameTo3);

判断方法

exists():判断调用该方法的对象对应的文件或文件夹是否在磁盘中存在
isFile():判断调用该方法的对象对应的文件是不是文件
isDirectory():判断调用该方法的对象对应的文件是不是文件夹

	//判断文件是否存在
	File f1 = new File("sc\\a.java");//创建文件对象
	File f2 = new File("sc");        //创建一个文件夹对象
	boolean exists = f1.exists();    //调用exists()方法判断是否存在
	System.out.println(exists);      //打印结果为true即文件存在
	//判断是否是文件
	boolean file = f1.isFile();
	boolean file2 = f2.isFile();
	System.out.println(file);    //f1是文件对象打印结果为true即是文件
	System.out.println(file2);   //f2是文件夹对象打印结果是false即不是文件
	//判断是否是文件夹
	boolean file3 = f1.isDirectory();
	boolean file4 = f2.isDirectory();
	System.out.println(file3);    //f1是文件对象打印结果为false即不是文件夹
	System.out.println(file4);    //f2是文件夹对象打印结果是true即是文件夹
获取方法

getAbsolutePath():获取对应文件的绝对路径
getPath():获取对应文件对象构造方法路面的路径
getName():获取文件的名称
length():获取文件大小(字节个数 英文每个字符一个字节,中文字符两个字节)

	//创建文件对象
	File f1 = new File("sc");
	File f2 = new File("AAA\\bbb\\ddd");
	File f3 = new File("sc\\a.java");
	//调用相关方法
	File absoluteFile = f1.getAbsoluteFile();
	String path = f2.getPath();
	String name = f3.getName();
	long length = f3.length();
	//打印结果
	System.out.println(absoluteFile);//打印出文件绝对路径 D:\javaproject\Java Exercises\sc
	System.out.println(path);        // 打印出文件对象构造方法中的路径 AAA\bbb\ddd
	System.out.println(name);        //a.java 打印出文件的名字
	System.out.println(length);      //8 打印出文件的大小(文件内容问“你好java”共8字节

length()方法文件夹一般不会调用,文件夹大小有其中的文件大小决定
中文字符占两个字节,英文字符占一个字节

文件夹专用方法

String [] list():获取文件夹中所有文件的文件名到数组中
File [] listFiles():获取文件夹中所有文件的文件路径到数组中

    File f4 = new File("D:\\javaproject\\sucai");   //创建一个文件夹对象f4
    String[] list = f4.list();
    File[] listFiles = f4.listFiles();
    System.out.println(Arrays.toString(list)); 
    // 打印结果:[a.txt, Info.txt]。 打印出文件夹中文件的名字到数组中
    System.out.println(Arrays.toString(listFiles));
    //打印结果:[D:\javaproject\sucai\a.txt, D:\javaproject\sucai\Info.txt]。 打印出文件夹中文件的路径到数组中
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值