java学习之输入,输出流

输入流与输出流

 (一)流的分类:字节流和字符流 区别如下:

     1,字节流(8位Unicode)在操作的时候本身是不会用到缓冲区(内存)的,是与文件本身直接操作的,而字符流(16位Unicode)在操作的时候是使用到缓冲区的

     2,字节流在操作文件时,即使不关闭资源(close方法),文件也能输出,但是如果字符流不使用close方法的话,则不会输出任何内容,说明字符流用的是缓冲区,

      并且可以使用flush方法强制进行刷新缓冲区,这时才能在不close的情况下输出内容

     3,在所有的硬盘上保存文件或进行传输的时候都是以字节的方法进行的,包括图片也是按字节完成,而字符是只有在内存中才会形成的,所以使用字节的操作是最多的。

 (二)File类

 (三)IO流

     1,四个基本流的抽象类(输入为只读取文本,输出为只写入文本)

     

     FileInputStream和FileOutputStream代码测试

 View Code

     2,转换流(InputStreamReader:将输入字节转为字符;OutputStreamWriter:将输出字节转为字符) 

 View Code

     3,序列化         建议每个javaBean都实现序列化即实现(Serializable)接口或(Externalizable)接口

    4,Charest

原文地址:https://www.cnblogs.com/xieyulin/p/7061190.html