Java学习笔记(十三)

来源:互联网 发布:java超市管理系统项目 编辑:程序博客网 时间:2024/05/16 07:10
一、回顾
    1、流(stream):是一连串流动的字符,以先进先出的方式传输数据的通道.
       1-1、输入流:从指定的数据源(文件,存储介质,网络)读数据到内存(program),读操作。
       1-2、输出流:从内存将数据写到目的地(dest),比如:文件,存储介质等等,写操作。
       1-3、字节流:基本单位是字节,最底层。
            1)InputStream
              int read():执行一次,读取一个字节,返回值是该字节对应的整数值,当返回值是-1时,说明读到资源的尾部。
              int read(byte[] array):读取时,是用array作为容器来读取,返回值是某次读操作时,容器中实际读取到的字节数,当是-1时,表示读到了资源的末尾。
              int read(byte[] array,int off,int length):读取时,是用array作为容器来读取,返回值是某次读操作时,容器中实际读取到的字节数,但是,在读取时是从数组的off位置开始存储,读length个字节。
              int available():表示还有多少个字节。
              skip(long):读操作时,跳过多少个字节。
              close():关闭输入流。
              FileInputStream:
              ByteArrayInputStream:要有一个字节数组作为数据源。
              
            2)OutputStream
              write(int c):通过输出流对象,写一个字节到目的地。
              write(byte[]):通过输出流对象,将字节数组中的内容写到目的地。
              write(byte[],off,length):通过输出流对象,将字节数组的相对偏移量写
              到目的地。
              flush():清空缓存。
              close():关闭输出流。
              FileOutputStream:
              ByteArrayOutputStream:
              write(byte[])
              writTo(OutputStrem):
              
            字符流:基本单位是字符(两个字节表示一个字符)。
            1)Reader:
              创建字符输入流对象
              进行读操作
              应用读到的数据
              关闭输入流对象
              
            2)writer:
              创建字符输出流对象
              进行写操作
              清空缓存
              关闭输出流对象
            
            题目:自定义学员类,通过输出流对象向指定数据文件写入若干学员对象
                  信息,然后,通过输入流对象从自定文件读取所有学员信息,放入
                  集合中,并对他们按照不同属性排序,要求,读写操作都要封装成
                  方法。
                  
                  \r回车:回到该行头部
                  \n换行:下一行
                  \r\n
             扩展:
                 1) ObjectInputStream
                    输入流:读取对象
                    readObject()
                 2) ObjectOutputStream
                    输出流:写对象
                    writeObject(obj)
                    
                    
                 在进行对象读写时,要求被读写的对象类型实现了Serializable接口,此
                 接口是序列化接口,其实就是个记号(标识,说明该类可以序列化)。
                                  
                 序列化:将对象数据保存到文件,或者存储介质。
                 
                 反序列化:将存储在文件或者存储介质的对象数据信息,还原到内存,重
                      构对象。
原创粉丝点击