文件字节流

158 阅读2分钟

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

文件流

文件流的分类:
根据功能分为:输入流(读取文件) 和 输出流(写入文件)
根据操作内容:字符流(读取字符数组) 和 字节流(读取字节数组)
字节输入流,字节输出流,字符输入流,字符输出流

File类只能操纵文件、获取与文件相关的信息,但不能对文件 进行读写 要做到对文件的读写操作,必须使用相关的文件流 • 文件字节流、文件字符流

文件字节输入流(按字节读取文件中的数据) FileInputStream类

构造方法 用文件名name创建一个文件字节输入流对象

• public FileInputStream(String name) 例如:FileInputStream in = new FileInputStream("a.txt"); 用File对象创建一个文件字节输入流对象

• public FileInputStream(File file) 例如:File file=new File("data\b.txt");

• FileInputStream in = new FileInputStream(file);

文件字节输入流的读方法

 FileInputStream类的对象调用read()方法顺序地读取文件,直到文件的末尾或者流被关闭,read()方法如下所示

public int read() throws IOException
• public int read(byte[ ] b) throwsIOException
• public int read(byte[ ] b, int off, int len)throws IOException

 读取位置达到文件末尾,则返回-1

文件字节输出流(按字节将数据写到文件中) FileOutputStream类

构造方法

用文件名name创建一个文件字节输出流对象

• public FileOutputStream(String name) 例如:FileOutputStream out = new FileOutputStream("a.txt"); 用File对象创建一个文件字节输出流对象

• public FileOutputStream(File file) 例如:File file=new File("data\b.txt"); FileOutputStream out = new FileOutputStream(file);

文件字节输出流的写方法  FileOutputStream类的对象调用write()方法顺序地向文件写入内容,直到流被关闭,输入之初如果文件已经存在,则内容将被刷新;如果文件不存在,则文件将被创建,write()方法如下所示

public void write(byte[ ] b) throwsIOException
public void write(byte[ ] b, int off,int len) throws IOException
  1. 线程的常用方法

Start() 启动方法 表示线程进入了可运行状态

Seleep(int) 随眠方法,当前线程进入阻塞状态,在一定时间以后苏醒

Join() 方法 被调用者优先执行,执行完毕后当前线程在执行(阻塞的的是当前线程)

Wait() 方法 当前线程进入阻塞状态,一直到对方唤醒自己才可以继续执行

notifyAll()唤醒被阻塞的线程 需要注意:wait(),notify()两个方法是Object类提供的