美文网首页
java io流

java io流

作者: join_a922 | 来源:发表于2018-12-04 12:02 被阅读4次

    Java中按照流的不同方向分为输入流和输出流,凡是含有in的,都可理解为输入流,输入流即从文件读取到程序,凡是含有out的,都可以理解为输出流,输出流即从程序输出到文件。按照单位分的话,可以分为字节流和字符流,字节流(读取-二进制文件。写入、拷贝-文本、二进制文件)中包括:

    InputStream--字节输入流的基类(抽象类)

    OutputStream--字节输出流的基类(抽象类)

    FileInputStream--文件字节输入流

    FileOutputStream--文件字节输出流

    FilterInputStream--过滤器字节输入流

    FilterOutputStream--过滤器字节输出流

    BufferedInputStream--带有缓冲区字节输入流

    BufferedOutputStream--带有缓冲区字节输出流

    字节流之间的继承关系

    字符流(读取、写入、拷贝文本)包括:

    Reader--字符输入流(抽象类)

    Writer--字符输出流(抽象类)

    InputStreamReader--字符输入转换流

    OutputStreamWriter--字符输出转换流

    FileReader--文件字符输入流

    FileWriter--文件字符输出流

    BufferedReader--带有缓冲区字符输入流

    BufferedWriter--带有缓冲区字符输出流

    缓冲区默认大小是8192个字符,即1024*8

    字符流之间的继承关系

    其余的各种流:

    对象流:(在文件中存储对象)

    ObjectInputStream--对象输入流

    ObjectOutputStream--对象输出流

    要想类对象存入文件,此类必须实现序列化接口,即实现Serializable,这是一个标记型接口,接口中没有要实现的方法,序列化的过程是从程序到文件,而反序列化是从文件到程序。

    打印流:

    PrintStream:可以将字节流封装成打印流

    PrintWriter:可以将字节流、字符流封装成打印流

    可以用其进行重定向操作,即重新定义系统标准输入、输出流的方向

    随机访问流:RandomAccessFile

    有两种模式: r--读取  rw--读写

    内存流:

    ByteArrayInputStream--内存输入流

    ByteArrayOutoutStream--内存输出流

    内存流是关不掉的

    NIO-new io:面向缓冲区的IO流

    Java NIO 由以下几个核心部分组成:

    Buffers--缓冲区:针对系统的缓冲区

    Channels--通道:类似于BIO里面的流

    Selectors--选择器

    相关文章

      网友评论

          本文标题:java io流

          本文链接:https://www.haomeiwen.com/subject/fycmcqtx.html