首页 > 代码库 > java io基础(java.io)

java io基础(java.io)

技术分享

首先流分为输入和输出流,java分为字节流和字符流

  1.字节输入流io.InputStream

    io.InputStream是一个抽象类它实现了Closeable接口的抽象类。那么它的子类(io包下)有ByteArrayInputStream,FileInputStream,FilterInputStream,PipedInputStream

      ByteArrayInputStream是一个字节数组作为缓冲区。

      FileInputStream主要用于文件,参见File类可以发现File对象不仅仅是某个文件,也可以是某个路径。

      FilterInputStream 的作用是用来“封装其它的输入流,并为它们提供额外的功能”。它的常用的子类有BufferedInputStream和DataInputStream.那么这里的BufferedInputStream

      的作用就是为“输入流提供缓冲功能,以及mark()和reset()功能”。

      PipedInputStream主要用于多线程中的多条管道的切换。

   2.字节输出流io.OutputStream同上

  3.字符输入流io.Reader

  4.字符输出流io.Writer

 

那么字符和字节流是否可以相互转化,答案是可以的。

InputStreamReader&OutputStreamWriter

java io基础(java.io)