文件io

File file = new File(相对路径/绝对路径)

文件是指存储在硬盘(磁盘)上的文件(目录)

路径就是文件的地址,这里的路径有两种方式

例:一个文件的地址是"C:\Program Files (x86)\text.txt"

1.相对路径:先指定一个当前目录/工作目录/基准目录,从当前目录出发,找到目标文件

.\test.txt

2.绝对路径:从树根节点出发,一层一层最终到达目标文件

"C:\Program Files (x86)\text.txt"

若当前目录是C:/User/1相对目录是./test.txt

若当前目录是C:/User相对目录是./1/test.txt

若当前目录是C:/User/1/AppData相对目录是../test.txt(这里的两个..是表示上层目录)

文件重要分类

1.文本文件:使用记事本打开看到的是正常内容就是文本文件

2.二进制文件:使用记事本打开看到是乱码内容就是二进制文件

 

文件操作的api

1.getparent获取上一级目录

2.getname获取文件名字

3.getpath获取file的构造方法的参数

4.getabsolutepath把相对路径转换成绝对路径

5.getcaonicalpath针对getabsolutepath整理化简之后的结果

 

创建文件

file.createNewFile

 

删除文件

删除文件是有带有返回类型的,删除成功就会返回true

 

重命名文件

把src的目录名字修改成dest的名字

 

列出目录文件

 

 
 文件的判断

 创建目录/多个目录

需要先把目录名字定义好

 

 

文件内容操作

字节流

打开文件

关闭文件

释放文件相关资源,如果打开文件和关闭文件中的代码出现了异常或者是return,就会导致无法关闭文件,无法关闭文件就一导致文件资源泄漏

 可以是用finally来保证关闭文件一定会被执行,需要把实例化对象放在try的外面,不然出了try的代码块之后就会自动销毁,后续的finally拿不到

 对于try操作java还提供了另一个版本,try with resources,出了try的代码块就会自动关闭文件,但是放在try()里面的类必须要实现closeable接口的

 读文件read()

提供了三个版本

1.无参数的版本每次调用读取一个字节,返回值就表示读取到的这个字节的值,这里的返回值看起来是int实际上是byte,实际取值是0-255,如果读到文件末尾就会返回-1

2.一个参数版本,传入的字节数组参数是一个输出型参数,创建一个内容为空的数组,在把空的数组交给read进行内容填充

3.和第二个版本一样多了两个参数,off是偏移量,len是位置,只能从哪个位置读到哪个位置

read的第二个和第三个版本返回的int表示实际读取的字节个个数,默认情况read会尝试把数组填满,但是文件的实际长度可能不足以填满,返回值就会告诉我们实际填充了多少个字节

 读取文件内容,输出的是文件内容的acsii的十进制的数字

 

写文件write()

同样也是有三个版本

1.单独写

2.写整个数组

3.从数组的某个位置写到某个位置

默认写文件是把文件清空然后写新的文件 

要想不清空文件,在文件后面添加,就要在try后面添加append参数

 

字符流(返回类型是char)

reader读文件

读取到的文件内容已字符串的形式输出

 

 

writer写文件

 

也可以使用Scanner来辅助读取文件

 

posted @ 2025-04-10 21:42  油头男孩  阅读(14)  评论(0)    收藏  举报