File类和File目录

1、File类

1.1、java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建、宣找和期涂等操作。

 1.2、构造方法

  •  public File(String pathname) :通过将给定的路径名字符串转换为抽象路径名来创建新的   File实例。
  •  public File(String parent,String child) :从父路径名字符串和子路径名字符串创建新的     File实例。
  •  public File(File parent,string child) :从父抽象路径名和子路径名字符串创建新的 File实例。

 代码如下:

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

public class FIleTest02 {
    public static void main(String[] args) throws IOException {
        File f1=new File("D:/aa/bb/cc");
        File f2=new File(f1,"a.txt");
    }
}

 1.3.file类的功能

1.获取文件的路径

import java.io.File;

public class FileTest01 {
    public static void main(String[] args) {
        File f1=new File(  "D:/aa/hello.txt");
        File absoluteFile = f1.getAbsoluteFile();
    }
}

在工作中我们可以运用到通过获取同事的文件路径来写自己的代码

 2.getpath、getName、getParent

import java.io.File;

public class FileTest01 {
    public static void main(String[] args) {
        File f1=new File(  "D:/aa/hello.txt");
        File absoluteFile = f1.getAbsoluteFile();
        String path = fl.getPath();
        System.out.println(path);
        String name = fl.getName();
        System.out.printin(name);
        String parent = f1.getParent(0);
        System.out.println(parent);
    }
}
  •  getPath:文件的全路径
  • getName:文件的文件名
  • getParent:文件的目录或目录的名称

 3.获取文件的字符长度

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

public class FileTest01 {
    public static void main(String[] args) throws IOException {
        File f1=new File(  "D:/aa/hello.txt");
        File absoluteFile = f1.getAbsoluteFile();
        System.out.println(absoluteFile);
        System.out.println(f1.length());
    }
}

4.判断文件的功能

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

public class FileTest01 {
    public static void main(String[] args) throws IOException {
        File f1=new File(  "D:/aa/hello.txt");
        File f2=new File("./bb.txt");
        File absoluteFile = f1.getAbsoluteFile();
        System.out.println(f1.exists());//判断文件 或者  文件夹是否存在
        System.out.println(f2.exists());

        System.out.println(f1.isDirectory());//判断是否为文件夹
        System.out.println(f1.isFile());//判断是否为文件
        System.out.println(f2.isDirectory());
        System.out.println(f2.isFile());
    }
}

5.创建文件夹和文件的功能

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

public class FIleTest02 {
    public static void main(String[] args) throws IOException {
        File f1=new File("D:/aa/bb/cc");
        File f2=new File(f1,"a.txt");
        //创建文件夹
        f1.mkdirs();
        //创建文件
        f2.createNewFile();
    }
}

 mkdir():只能创建一个文件夹

mkdirs():能创建多重文件夹

 

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

public class FIleTest02 {
    public static void main(String[] args) throws IOException {
        File f1=new File("D:/aa");
        File f2=new File("D:/aa/bb/cc");
        //创建文件夹
        f1.mkdir();//可以创建
        f2.mkdir();//创建不了
        f2.mkdirs();//可以创建
    }
}

如何创建多个文件

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

public class FileTest03 {
    public static void main(String[] args) throws IOException {
        File f3=null;
        //1.目录结构不存在,程序异常;2.目录结构存在且文件不存在则创建空文件;3.目录结构存在且文件存在不做任何操作
        for (int i=0;i<10;i++){
            f3=new File("D:/aa/bb/cc/a"+i+".jpg");
            f3.createNewFile();
        }
    }
}

 结果:

 6.如何删除文件

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

public class FIleTest02 {
    public static void main(String[] args) throws IOException {
        File f1=new File("D:/aa");
        File f2=new File("D:/aa/bb/cc");
        //删除映射的文件或目录对象,父目录不会被删除
        f2.delete();
    }
}

即可以删除文件也可以删除文件夹

 绝对路径和相对路径

  • 绝对路径:从盘符开始的路径,这是一个完整的路径
  • 相对路径: 相对于项目目录的路径,这是一个便捷的路径,开发中经常使用。

 

import java.io.File;

public class FileTest04 {
    public static void main(String[] args) {
        // D盘下的bbb.java文件
        File f = new File("D:\\bbb.java");
        System.out.println(f.getAbsolutePath());
        // 项目下的bbb.java文件
        File f2 = new File("bbb.java");
        System.out.println(f2.getAbsolutePath());
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值