java文件类

75 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第20天,点击查看活动详情

一、Java.io包

现在大家看到 “i/o” 想必也不会陌生了吧,这是Java中一个内置的包,专门用于文件读写的一个操作的类

在程序中使用 文件或者流的操作就要导入import java.io.*;

File类

File类可以表示一个文件,还可以表示一个目录(Directory),所以我们可以在程序中用File 类的对象可以表示一个文件 或者 目录

当创建了 File 对象之后,我们可以利用该对象来对文件或者目录进行书属性修改:例如:文件的名称,修改日期的日期等等

File 类的对象 还不能直接对文件进行读写操作,只能修改文件的属性

Stream流(字节流)

流是指一连串流动的数据信号,通过FiFO(先进先出) 的方式接收和发送数据

数据流又分为输入流和输出流

输入输出流又分为字节流和字符流

字节流:以字节为基本单位 , 在 java.io包中,大部分操作继承InputStream(输入字节流)类和OutputStream(输出字节流)类

字符流:两个字节为基本单位,专门处理字符串和文本,对于字符流进行操作的类主要是Reader(读取流)类和 Writer(写入流)类。

使用FileInputStream类

继承于InputStream类,这是一个文件输入流,进行文件读操作的最基本的类

作用是将文件中的数据输入到内存中,我们可以用它来读文件操作

由于字节流的缘故,因此无法读取中文字符

使用FileOutputStream类

FileOutputStream类称为文件输出流,继承于OutputStream类,是文件的基本读写的一个类

它的作用和上面读文件恰恰相反,将内存中的数据输出到文件中,所以我们可以用这个类来进行写文件的操作

  • FileInputStream类 和 FileOutputStream类总是成对出现的,一个用作输入流,另一个自然是输出流
  • 我们在输入流中使用 byte(字节)数组 来存储我们的数据,因此我们不必考虑数据格式,所以说这两种操作的效率会比较高