[关闭]
@linux1s1s 2015-12-14T17:11:35.000000Z 字数 1043 阅读 2056

Java I/O 操作

Java


流的概念

一张图来形象的理解一下:
此处输入图片的描述

字节流和处理流

此处输入图片的描述
字节流是最底层的概念,为了方便操作和提高效率,封装了一层流操作,这就是处理流,比如常见的Buffered开头的和Data开头的流操作。

I/O整体

此处输入图片的描述

这张图基本解释清楚了I/O的整体概念,深色的类是基本的字节流,浅色的为处理流。

举个简单的例子作为最后的结尾:

  1. public static void main(String[] args) throws IOException {
  2. // 节点流FileOutputStream直接以A.txt作为数据源操作
  3. FileOutputStream fileOutputStream = new FileOutputStream("a.txt");
  4. // 过滤流BufferedOutputStream进一步装饰节点流,提供缓冲写
  5. BufferedOutputStream bufferedOutputStream = new BufferedOutputStream(
  6. fileOutputStream);
  7. // 过滤流DataOutputStream进一步装饰过滤流,使其提供基本数据类型的写
  8. DataOutputStream out = new DataOutputStream(bufferedOutputStream);
  9. out.writeInt(3);
  10. out.writeBoolean(true);
  11. out.flush();
  12. out.close();
  13. // 此处输入节点流,过滤流正好跟上边输出对应
  14. DataInputStream in = new DataInputStream(new BufferedInputStream(
  15. new FileInputStream("A.txt")));
  16. System.out.println(in.readInt());
  17. System.out.println(in.readBoolean());
  18. in.close();
  19. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注