File类与文件信息

117 阅读4分钟

「这是我参与11月更文挑战的第16天,活动详情查看:2021最后一次更文挑战

🎁作者:静Yu

🎁简介:CSDN全栈领域优质创作者、前端知识交流社区创建者、知识小海洋公众号拥有者\

🎁社区地址:bbs.csdn.net/forums/Jing…

🎁个人博客地址:JingYu1205.github.io

🧡File类在java.io包中

🧡Java使用File类创建的对象来获取文件本身的一些信息,例如: 文件所在的目录 文件的长度

🧡File类的对象不能对文件的内容进行读写 File类的构造方法

public File(String name)File file1=new File("D:\\enjoy\\data1.txt");
• File file2=new File("data\\data2.txt");
• File file3=new File("data");
 public File(String parent, String child)File file4=new File("D:\\enjoy", "data");
• File file5=new File("D:\\enjoy", "data4.txt");
public File(File parent, String child)File file6=new File("D:\\enjoy");
• File file7=new File(file6, "data.txt");

File类是java.io包下代表与java平台无关的文件和目录的类。在程序中操作文件和目 录,就是使用File类来完成。注意,不管是文件还是目录都是使用File来操 作的,File能新建、删除、重命名文件和目录,但是File不能访问文件内容本身。如果 需要访问文件内容本身,则需要使用输入/输出流。

引入File类 import java.io.File; 还有IO流 import java.io.IOException;

File类的成员方法 在这里插入图片描述

public String[ ] list()
• 以字符串数组的形式返回本File对象对应
的目录下所有子目录和文件的名称
 public File[ ] listFiles()
• 用File对象形式返回目录下的全部文件
 public String[ ] list(FilenameFilter obj)
• 用字符串形式返回目录下指定类型的文件
 public File[ ] listFiles(FilenameFilter obj)
• 用File对象返回目录下指定类型的文件

在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

Java文件类以抽象的方式代表文件名和目录路径名。该类主要用于文件和目录的创建、文件的查找和文件的删除等。

File对象代表磁盘中实际存在的文件和目录。通过以下构造方法创建一个File对象。

通过给定的父抽象路径名和子路径名字符串创建一个新的File实例。

File(File parent, String child);

通过将给定路径名字符串转换成抽象路径名来创建一个新 File 实例。

File(String pathname) 

根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。

File(String parent, String child) 

通过将给定的 file: URI 转换成一个抽象路径名来创建一个新的 File 实例。

File(URI uri) 

一、File类

在讲解File类之前,我们先认识和了解一下流的概念;流的概念可能比较抽象,可以想象一下水流的样子。

1.流

IO在本质上是单个字节的移动,而流可以说是字节移动的载体和方式,它不停的向目标处移动数据,我们要做的就是根据流的方向从流中读取数据或者向流中写入数据。

想象下倒水的场景:倒一杯水,水是连成一片往地上流动,而不是等杯中的水全部倒出悬浮在空中,然后一起掉落地面。最简单的Java流的例子就是下载电影,肯定不是等电影全部下载在内存中再保存到磁盘上,本质上是下载一个字节就保存一个字节。

一个流,必有源和目标,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。流的方向是重要的,根据流的方向,流可分为两类:输入流和输出流。我们从输入流读取数据,向输出流写入数据。

2.流的分类

根据流向:输入流(input)和输出流(output)
根据处理数据:字节流(二进制,可以处理一切文件,文本,音频等) 字符流(文本文件,只能是纯文本)
根据功能:节点流包裹源头 处理流:增强功能,提供性能

3.文本文件 text-files

有些文件被当作字符序列,并拥有一些使二进制数字对程序和编辑器来说就像字符一样的流和方法,这样的文件就称之为文本文件。
4.二进制文件 binary-files
有些文件内容必须作为二进制数字序列处理的文件则称之为二进制文件

文本文件是为人类使用而设计的,而二进制文件是为程序读取计算机使用而设计的。

5.File 操作

在整个io包中,唯一表示与文件本身有关的类就是File类。使用File类可以进行创建或删除文件等常用操作,要想使用File类,则首先要观察File类的构造方法,此类的常用构造方法如下:

image.png