Java中字节字符流的工作原理是如何实现的?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1445个文字,预计阅读时间需要6分钟。
Java的流体系庞大,我们来浏览一下体系图:这么庞大的体系中,常用的就那么几个,我们将其抽取出来,如下图所示:
1. 字节流 1: 字节输入流 - InputStream:字节输入流的抽象基类,用于读取字节数据。
2. 字节输出流 1: 字节输出流 - OutputStream:字节输出流的抽象基类,用于写入字节数据。
Java的流体系十分庞大,我们来看看体系图:
这么庞大的体系里面,常用的就那么几个,我们把它们抽取出来,如下图:
一:字节流
1:字节输入流
字节输入流的抽象基类是InputStream,常用的子类是 FileInputStream和BufferedInputStream。
1)FileInputStream
文件字节输入流:一切文件在系统中都是以字节的形式保存的,无论你是文档文件、视频文件、音频文件...,需要读取这些文件都可以用FileInputStream去读取其保存在存储介质(磁盘等)上的字节序列。
FileInputStream在创建时通过把文件名作为构造参数连接到该文件的字节内容,建立起字节流传输通道。
然后通过 read()、read(byte[])、read(byte[],int begin,int len) 三种方法从字节流中读取 一个字节、一组字节。
2)BufferedInputStream
带缓冲的字节输入流:上面我们知道文件字节输入流的读取时,是直接同字节流中读取的。由于字节流是与硬件(存储介质)进行的读取,所以速度较慢。
本文共计1445个文字,预计阅读时间需要6分钟。
Java的流体系庞大,我们来浏览一下体系图:这么庞大的体系中,常用的就那么几个,我们将其抽取出来,如下图所示:
1. 字节流 1: 字节输入流 - InputStream:字节输入流的抽象基类,用于读取字节数据。
2. 字节输出流 1: 字节输出流 - OutputStream:字节输出流的抽象基类,用于写入字节数据。
Java的流体系十分庞大,我们来看看体系图:
这么庞大的体系里面,常用的就那么几个,我们把它们抽取出来,如下图:
一:字节流
1:字节输入流
字节输入流的抽象基类是InputStream,常用的子类是 FileInputStream和BufferedInputStream。
1)FileInputStream
文件字节输入流:一切文件在系统中都是以字节的形式保存的,无论你是文档文件、视频文件、音频文件...,需要读取这些文件都可以用FileInputStream去读取其保存在存储介质(磁盘等)上的字节序列。
FileInputStream在创建时通过把文件名作为构造参数连接到该文件的字节内容,建立起字节流传输通道。
然后通过 read()、read(byte[])、read(byte[],int begin,int len) 三种方法从字节流中读取 一个字节、一组字节。
2)BufferedInputStream
带缓冲的字节输入流:上面我们知道文件字节输入流的读取时,是直接同字节流中读取的。由于字节流是与硬件(存储介质)进行的读取,所以速度较慢。

