【I/O流】File类开启之旅:从0到1的全面解析

专栏【Java】

每日一句:看不清楚未来时,就比别人坚持久一点

⭐欢迎并且感谢大家指出我的问题

【I/O流】File类开启之旅:从0到1的全面解析_第1张图片

目录

1.File概述

2.File构造方法

(1).根据文件路径创建文件对象

(2).根据父路径名字符串和子路径名字符串创建对象

(3).根据父路径对应文件对象和子路径名字符串创建对象

3.File成员方法

(1).判断,获取

(2).创建,删除

1.createNewFile(创建文件)

2.mkdir(创建文件夹)

3.mkdirs(创建多级文件夹)

4.delete(删除文件)

(3).获取并遍历


 

1.File概述

在Java编程语言中,File类是用于表示文件和目录路径的类。通过File类,可以进行文件和目录的创建、删除、重命名等操作,以及获取它们的属性信息。File类提供了一系列方法,使得对文件系统中的文件和目录进行操作变得简单和方便。

本文将详细介绍File类的构造方法和主要成员方法,并给出示例代码帮助大家学习和巩固File类的各种用法。

2.File构造方法

【I/O流】File类开启之旅:从0到1的全面解析_第2张图片

(1).根据文件路径创建文件对象

public File(String pathname)

代码如下

【I/O流】File类开启之旅:从0到1的全面解析_第3张图片

(2).根据父路径名字符串和子路径名字符串创建对象

public File(String parent,string child)

【I/O流】File类开启之旅:从0到1的全面解析_第4张图片

(3).根据父路径对应文件对象和子路径名字符串创建对象

public File(File parent,string child)

【I/O流】File类开启之旅:从0到1的全面解析_第5张图片

 

3.File成员方法

(1).判断,获取

【I/O流】File类开启之旅:从0到1的全面解析_第6张图片

代码如下

package File;
import java.io.File;
public class FileDemo2 {
  public static void main(String[] args) {
    File f1=new File("D:\\aaa\\b.txt");
    System.out.println(f1.isDirectory());
    System.out.println(f1.isFile());
    System.out.println(f1.exists());
	}
}

 运行结果

【I/O流】File类开启之旅:从0到1的全面解析_第7张图片

(2).创建,删除

【I/O流】File类开启之旅:从0到1的全面解析_第8张图片

1.createNewFile(创建文件)

注意1:如果当前路径是不存在的,则创建成功,方法返回True。
如果当前路径是存在的,则创建失败,方法返回false。

注意2:如果父级路径是不存在的,那么方法会有异常IOException。
注意3:createNewFile方法创建的一定是文件,如果路径中不包含后缀名,则创建一个没有后缀的文件。

代码如下

package File;
import java.io.File;
import java.io.IOException;
public class FileDemo4 {
  public static void main(String[] args) throws IOException {
    File f1=new File("D:\\aaa\\c.txt");
    boolean b = f1.createNewFile();
    System.out.println(b);
   }
}

运行结果

【I/O流】File类开启之旅:从0到1的全面解析_第9张图片

2.mkdir(创建文件夹)

注意1:windows中路径是唯一的,如果当前路径已经存在,则创建失败,返回flase

注意2:mkdir方法只能创建单级文件夹,无法创建多级文件夹

代码如下

package File;
import java.io.File;
public class FileDemo5 {
  public static void main(String[] args) {
    File f1=new File("D:\\aaa\\ddd");
    boolean b = f1.mkdir();
    System.out.println(b);
	}
}

运行结果

【I/O流】File类开启之旅:从0到1的全面解析_第10张图片

3.mkdirs(创建多级文件夹)

注意:既可以创建单级文件夹,又可以创建多级文件夹

代码如下

package File;
import java.io.File;
public class FileDemo5 {
  public static void main(String[] args) {
     File f2=new File("D:\\aaa\\bbb\\ccc\\ddd");
     boolean b = f2.mkdirs();
     System.out.println(b);
	}
}

运行结果

【I/O流】File类开启之旅:从0到1的全面解析_第11张图片

4.delete(删除文件)

【I/O流】File类开启之旅:从0到1的全面解析_第12张图片

注意1:如果删除的是文件,则直接删除,不走回收站

注意2:如果删除的是空的文件夹,则直接删除,不走回收站

注意3:如果删除的是有内容的文件夹,则删除失败

package File;
import java.io.File;
public class FileDemo5 {
  public static void main(String[] args) {
     File f1=new File("D:\\aaa\\a.txt");
     boolean b = f1.delete();
     System.out.println(b);
	}
}

(3).获取并遍历

636d3694a3024ded876b97a74e8e54fb.png

listFiles:该方法用于遍历某个指定目录下的所有文件的名称。

练习1

(遍历aaa文件下的目录)

代码如下

package File;
import java.io.File;
public class FileDemo6 {
  public static void main(String[] args) {
      File f1= new File("D:\\aaa");
      File [] files =f1.listFiles();
      for (File file:files) {
		   System.out.println(file);
		}
	}
}

运行结果

【I/O流】File类开启之旅:从0到1的全面解析_第13张图片

【I/O流】File类开启之旅:从0到1的全面解析_第14张图片

练习2

(判断E盘目录下是否有后缀名为.jpg的文件,如果有,就输出此文件名称)
分析
     A:封装e判断目录
     B:获取该目录下所有文件或者文件夹的File数组
     C:遍历该File数组,得到每一个File对象,然后判断
    D:是否是文件
         是:继续判断是否以.jpg结尾
             是:就输出该文件名称
                 否:不搭理它
             否:不搭理它

public class FileDemo {
	public static void main(String[] args) {
		// 封装e判断目录
		File file = new File("e:\\");
		// 获取该目录下所有文件或者文件夹的File数组
		File[] fileArray = file.listFiles();
		// 遍历该File数组,得到每一个File对象,然后判断
		for (File f : fileArray) {
			// 是否是文件
			if (f.isFile()) {
				// 继续判断是否以.jpg结尾
				if (f.getName().endsWith(".jpg")) {
					// 就输出该文件名称
					System.out.println(f.getName());
				}
			}
		}
	}
}	

学习编程需要勤加练习,勇于实践,建议大家亲自动手操作,这样才能不断进步,掌握编程技巧,欢迎大家在评论区进行讨论。

 

你可能感兴趣的:(Java,java,开发语言)