首先IO流是有输入和输出机制组成。
在细分为字节输入输出和字符输入流,众所周知,我们java代码最小的基本单位就是字节byte,所以底层的都是字节,只不过在字符中,通过解码转为了字符。
输入:从磁盘到内存,read
字节:InputStream
字符:Reader
输出:从内存到磁盘,write
字节:OutputStream
字符:Writer
电脑上的文件,需要通过File类下面的方法来读取,从而在进行读和写。
在IO流中,缓冲区的作用是可以加快读和写的速度。
注意,我们需要在写完以后加上close方法,因为Java的流不仅在内存中分配了空间,还在操作系统中占用了资源,Java的Jvm只能在内存中回收,对操作系统无法干涉,所以就需要调用close方法来释放资源,如果不释放资源,那么就会使资源耗尽。