栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

一篇文章搞定File类

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

一篇文章搞定File类

文章目录
      • 一、File的介绍:
      • 二、File的构造方法:
      • 三、File的相关方法和属性
      • 四、File小技巧

一、File的介绍:
  • File类的一个对象,代表着一个文件或者一个文件目录(即文件夹)
  • File类声明在java.io包下
  • File类中涉及到关于文件或目录的创建,删除,重命名,修改时间,文件大小等方法,但是并没有涉及到写入或读取文件内容的操作,如果要读取或写入文件内容,必须使用IO流来完成。
二、File的构造方法:

示例:

//不使用Java提供的分隔符,以下是针对windows平台
File file1 = new File("D:\IO\a.txt");
System.out.println(file1);    //输出:D:IOa.txt

//使用Java提供的分隔符
File file2 = new File("D:" + File.separator + "IO" + File.separator + "a.txt");
System.out.println(file2);    //输出:D:IOa.txt

//File(File parent,String child)
//从父抽象路径和子路径字符串创建新的File实例
File file3 = new File("D:");
File file4 = new File(file3, "IO" + File.separator + "a.txt");
System.out.println(file4);    //输出:D:IOa.txt

//File(String pathname)
//通过将给定的路径名字符串转化为抽象路径名来创建新的File实例
File file5 = new File("D:" + File.separator + "IO" + File.separator + "a.txt");
System.out.println(file5);    //输出:D:IOa.txt

//File(String parent,String child)
//通过父类路径名字符串和子路径名字符串来创建新的File实例
File file6 = new File("D:", "IO\a.txt");
System.out.println(file6);   //输出:D:IOa.txt
三、File的相关方法和属性

属性:

常用方法:

File的获取功能:

//先创建一个File对象
File file = new File("D:" + File.separator + "IO" + File.separator + "a.txt");

//获取绝对路径
String absolutePath = file.getAbsolutePath();
System.out.println(absolutePath);      //D:IOa.txt

//获取相对路径
String path = file.getPath();
System.out.println(path);       //D:IOa.txt

//获取名称
String name = file.getName();
System.out.println(name);        //a.txt

//获取上一层目录路径
String parent = file.getParent();
System.out.println(parent);      //D:IO

//获取文件长度(字节数)
long length = file.length();
System.out.println(length);

//获取最后一次的修改时间(毫秒值)
long lastTime = file.lastModified();
System.out.println(lastTime);

File的判断功能:

//判断是否是目录
boolean isDirectory = file.isDirectory();
System.out.println(isDirectory);

//判断是否是文件
boolean isFile = file.isFile();
System.out.println(isFile);

//判断是否存在
boolean isExists = file.exists();
System.out.println(isExists);

//判断是否可读
boolean isRead = file.canRead();
System.out.println(isRead);

//判断是否可写
boolean isWrite = file.canWrite();
System.out.println(isWrite);

//判断是否隐藏
boolean isHidden = file.isHidden();
System.out.println(isHidden);

File的创建功能:

File file = new File("D:\a.txt");

//创建文件,如果文件已经存在,则不创建,并返回false
boolean createNewFile = file.createNewFile();
System.out.println(createNewFile);

//创建文件目录,如果文件目录已经存在,则不创建。如果此文件的上层目录不存在,也不创建
boolean mkdir = file.mkdir();
System.out.println(mkdir);

//创建文件目录,如果上层目录不存在,一并创建
boolean mkdirs = file.mkdirs();
System.out.println(mkdirs);

File的删除功能:

//Java的删除不走回收站
//要删除一个文件目录,需要保证这个目录中不包含文件或者其他目录
boolean delete = file.delete();
System.out.println(delete);

目录相关:

//以下两个方法适用于目录

//获取指定目录下的所有文件和文件目录的名称数组
public String[] list();      
//获取指定目录下的所有文件和文件目录的File数组
public File[] listFiles();

剩下的方法没有什么好说的,详情请见 java8文档:File类接口,需要用到的时候再进行查询文档即可。

四、File小技巧

打印给定目录下的所有文件夹和文件夹里面的内容:

public void getFileList(File file){
    //第一级子目录
    File[] files = file.listFiles();
    for (File f : files) {
        System.out.println(f);
        if(f.isDirectory()){
            getFileList(f);
        }
    }
}
@Test
public void test(){
    File file = new File("D:\data");
    getFileList(file);
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/324464.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号