文件操作和IO --- 文件操作

简介: 文件操作和IO --- 文件操作

一、关于文件



60904cac29534ef7b72c3407057da955.png


每个文件除了有数据内容之外,还有一些其他的信息,如文件类型、文件大小等不作为文件数据而存在,这部分信息可以视为文件的 元信息。

文件是树形结构的,按照层级结构进行组织。这样一种用来存放管理信息的特殊文件诞生了,也就是我们所谓的 文件夹(folder)或者目录(directory)的概念。


二、文件路径分类


绝对路径:D:\网易云\下载音乐\VipSongsDownload

相对路径:.\VipSongsDownload   这个  .    就是当前   D:\网易云\下载音乐 的目录,相对于下载音乐来说在哪!我们可以从任一节点出发,进行路径的描述,这种描述方式被称为相对路径。(  “ . ”代表当前节点    “ .. ”代表父节点,也就是向上层走一步  )


三、文件类型划分


我们通常根据文件内容来将文件划分为 本文文件和二进制文件 两类

  • 本文文件:记事本 打开我们能够看懂的文件的文件
  • 二进制文件:记事本 打开是乱七八糟的东西


四、File类 --- Java中的文件操作

1. 构造方法


File(String pathname):根据一个路径得到File对象

File(String parent, String child):根据一个目录 和 一个子文件/目录得到File对象

File(File parent, String child):根据一个父File对象 和 子文件/目录得到File对象


2. 方法

①创建方法


public boolean creatNewFile()  :创建一个新文件,若存在,则不重复创建

public boolean mkdir()  :创建一个目录,若存在,则不创建,只能创建单层目录

public boolean mkdirs()  :创建一个目录,若存在,则不创建,用于创建单层或多层目录


②删除功能

  • public boolean   delete() :删除由此抽象路径名表示的文件或目录 --- 非空文件夹删除失败返回false,空文件夹才能删除返回 ture


③File类判断和获取功能


public   boolean isDirectory():  测试此抽象路径名表示的File是否为目录

public   boolean isFile():        测试此抽象路径名表示的File是否为文件

public   boolean   exists():     测试此抽象路径名表示的File是否存在

public   String getAbsolutePath():返回此抽象路径名的绝对路径名字符串

public   String getPath():              将此抽象路径名转换为路径名字符串

public   String getName():           返回由此抽象路径名表示的文件或目录的名称

public   File[] listFiles():         返回此抽象路径名表示的目录中的文件和目录的File对象数组


④重命名功能

public boolean renameTo(File file)  : 把文件重命名为指定路径---注意:如果路径相同,就是改名

如果路径不同,就是剪切并改名。返回true,重命名成功。

五、例子:

public class Demo3 {
    public static void main(String[] args) throws IOException, InterruptedException {
//      创建一个名为 test的目录
        File fileDir = new File("./test");
        fileDir.mkdirs();
        System.out.println("fileDir.isFile() = " + fileDir.isFile());
        System.out.println("fileDir.isDirectory() = " + fileDir.isDirectory());
//      创建一个名为 test的txt类型的文件
        File fileTxt = new File("./test/test.txt");
        fileTxt.createNewFile();
        System.out.println("fileTxt.isFile() = " + fileTxt.isFile());
        System.out.println("fileTxt.isDirectory() = " + fileTxt.isDirectory());
        System.out.println("fileTxt.getAbsoluteFile() = " + fileTxt.getAbsoluteFile());
        Thread.sleep(10000);
        System.out.println("十秒后尝试删除test文件夹!!");
        System.out.println("fileDir.delete() = " + fileDir.delete());
        System.out.println("fileDir.isDirectory() = " + fileDir.isDirectory());
        Thread.sleep(5000);
        System.out.println("五秒后重新尝试删除文件夹!!");
        System.out.println("fileTxt.delete() = " + fileTxt.delete());
        System.out.println("fileDir.delete() = " + fileDir.delete());
    }
}


相关文章
|
7月前
|
Java C语言
文件操作与IO(3)
文件操作与IO(3)
|
7月前
|
存储 Unix Java
文件操作和IO(1)
文件操作和IO(1)
75 0
|
7月前
文件操作与IO(一些小项目)
文件操作与IO(一些小项目)
|
6月前
|
Linux 网络安全 开发工具
【linux】基础IO |文件操作符
【linux】基础IO |文件操作符
49 0
|
6月前
|
Java
文件操作与IO(3) 文件内容的读写——数据流
文件操作与IO(3) 文件内容的读写——数据流
46 0
|
6月前
|
Java Windows
文件操作和IO(2):Java中操作文件
文件操作和IO(2):Java中操作文件
30 0
|
7月前
|
存储 JSON 安全
Python中的文件操作与文件IO操作
【5月更文挑战第14天】在Python中,文件操作是常见任务,包括读取、写入和处理文件内容。`open()`函数是核心,接受文件路径和模式(如'r'、'w'、'a'、'b'和'+')参数。本文详细讨论了文件操作基础,如读写模式,以及文件IO操作,如读取、写入和移动指针。异常处理是关键,使用`try-except`捕获`FileNotFoundError`和`PermissionError`等异常。进阶技巧涉及`with`语句、`readline()`、`os`和`shutil`模块。数据序列化与反序列化方面,介绍了
68 0
|
7月前
|
Unix Linux 开发工具
【探索Linux】P.11(基础IO,文件操作)
【探索Linux】P.11(基础IO,文件操作)
43 0
|
7月前
|
Java
文件操作与IO(2)
文件操作与IO(2)
|
7月前
|
存储 Unix Java
文件操作和IO(1)
文件操作和IO(1)