• 第十周课程总结


    一、io流的三种分类方式

    1.按流的方向分为:输入流和输出流

    2.按流的数据单位不同分为:字节流和字符流

    3.按流的功能不同分为:节点流和处理流

    二、inputstream的基本方法

    int read() throws ioexception 读取一个字节以整数形式返回,如果返回-1已到输入流的末尾

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

    long skip(long n) throws ioexception 跳过n个字节不读

    outputstream的基本方法

    void write(int b) throws ioexception 向输出流写入一个字节数据

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

    三、io流的四大抽象类:

    字符流: reader writer

    字节流:inputstream(读数据) outputstream(写数据)

    四、writer的基本方法

    void write(int c) throws ioexception 向输出流写入一个字符数据

    void write(string str) throws ioexception 将一个字符串中的字符写入到输出流

    void write(string str,int offset,int length) 将一个字符串从offset开始的length个字符写入到输出流

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

    reader的基本方法

    int read() throws ioexception 读取一个字符以整数形式返回,如果返回-1已到输入流的末尾

    五、File类

    java.io.file类是专门对文件进行操作的类,只能对文件本身进行操作,不能对文件内容进行操作。

    File类是“文件和目录路径名的抽象表示”,而不是指文件内容(IO)。

    File类定义了一些与平台无关的操作方法,如:删除文件、创建文件、重命名等。

    Java目录被看成一个特殊文件,List()方法可以返回目录中所有的子目录和文件。

    在Unix下路径分隔符为(/),在windows下为(),在java中可以正确的处理不同系统的分隔符。

    六、字符流与字节流转换

    转换流的特点:其是字符流和字节流之间的桥梁,可对读取到的字节数据经过指定编码转换成字符,可对读取到的字符数据经过指定编码转换成字节。

    七、1、输入字节流InputStreamIO

    1、InputStream 是所有的输入字节流的父类,它是一个抽象类。

    2、ByteArrayInputStream、StringBufferInputStream、FileInputStream 是三种基本的介质流,它们分别从Byte 数组、StringBuffer、和本地文件中读取数据。PipedInputStream 是从与其它线程共用的管道中读取数据,与Piped 相关的知识后续单独介绍。

    3、ObjectInputStream 和所有FilterInputStream 的子类都是装饰流(装饰器模式的主角)。

    2、输出字节流OutputStream

    1、OutputStream 是所有的输出字节流的父类,它是一个抽象类。

    2、ByteArrayOutputStream、FileOutputStream 是两种基本的介质流,它们分别向Byte 数组、和本地文件中写入数据。PipedOutputStream 是向与其它线程共用的管道中写入数据,

    3、ObjectOutputStream 和所有FilterOutputStream 的子类都是装饰流。

    八、OutputStreamWriter和InputStreamReader

    在整个IO包中,实际上就是分为字节流和字符流,但是除了这两个流之外,还存在了一组字节流-字符流的转换类。

    OutputStreamWriter:是Writer的子类,将输出的字符流变为字节流,即:将一个字符流的输出对象变为字节流输出对象。

    InputStreamReade是Reader的子类,将输入的字节流变为字符流,即:将一个字节流的输入对象变为字符流的输入对象。

  • 相关阅读:
    前言(CSDN也有Markdown了,好开森)
    One usage of recurison: the tower of Hanoi
    使用Android注解来改善代码
    mysql生产环境____主从同步修复案例
    不同类型的指针
    C++ 对象模型
    为什么需要模版成员方法
    理解 traits
    C++ 异常处理
    传const引用代替传值
  • 原文地址:https://www.cnblogs.com/zzwwll/p/11786071.html
Copyright © 2020-2023  润新知