javase中IO流的学习笔记

输入/输出流的分类:java.io包中
    1.按数据流的方向不同分为:输入/输出流
    2.按处理数据单位不同分为:字节/字符流
    3.按照功能不同分为:节点/处理流

四种抽象流类型:
    ##字节流:
        1.InputStream(输入流):
            //读取一个字节并以整数的形式返回(0~255),
            //如果返回-1已到输入流的末尾
            int read() throws IOException

            //读取一系列字节并存储到一个数组buffer,
            //返回实际读取的字节数,如果读取前已到输入流的末尾返回-1
            int read(byte[] buffer) throws IOException

            //读取length个字节,
            //并存储到一个字节数组buffer,从length位置开始
            //返回实际读取的字节数,如果读取前已到输入流的末尾返回-1
            int read(byte[] buffer,int offset,int length) throws IOException

            //跳过n个字节不读,返回实际跳过的字节数
            long skip(long n) throws IOException

            //关闭流释放内存资源
            void close() throws IOException

        2.OutputStream(输出流):
            //向输出流中写入一个字节数据,该字节数据为参数b的低8位
            void write(int b) throws IOException

            //将一个字节类型的数组中的数据写入输出流
            void write(byte[] b) throws IOException

            //将一个字节类型的数组中的从指定位置(off)开始的
            //len个字节写入到输出流
            void write(byte[] b,int off,int len) throws IOExceptiom

            //将输出流中缓冲的数据全部写出到目的地
            void flush() throws IOException

            //关闭流释放内存资源
            void close() throws IOException

    ##字符流(1字符 == 2字节):
        1.Reader(用于向程序中输入数据):
            //方法同InputStream中的方法类似
        2.Writer(用于向程序中输出数据):
            //方法同OutputStream中的方法类似


总结:
    1.四种最基本的抽象类:InputStream,OutputStream(字节流),
                    Reader,Writer(字符流)
    2.对文件读写:FileInputStream,FileOutputStream
                FileReader,FileWriter
    3.带缓冲区的:BufferedInputStream,BufferedOutputStream
                BufferedReader,BufferedWriter
    4.对一个内存里的字节数组进行读写:ByteArrayInputStream,ByteArrayOutputStream
    5.转换流(把字节转换成字符):InputStreamReader,OutputStreamWriter
    6.直接写基础的数据类型或unicode-8字符串类型:DataInputStream,DataOutputStream
    7.打印流:PrintStream,PrintWriter
    8.ObjectInputStream/ObjectOutputStream:
        Serializable接口:标记型接口,由JDK帮忙控制这个类的对象怎么进行序列化
        transient关键字:
        Externalizable接口:自己控制这个类的对象怎么进行序列化
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值