java IO笔记(IO简述)

在java的学习中,IO这块儿往往是初学者们需要花费一定时间来仔细学习的地方。

在我们的开发过程中,肯定要遇到数据的输入、输出,java 的核心库java.io则为我们提供了全面的IO接口。包括了文件读写,标准设备输出等。这里的IO是指java 1.4没有引入NIO的IO,后面也将另开篇幅对java NIO进行学习。java.io通过数据流,序列化和文件系统提供系统的输入和输出。

java.io中包含了很多输入输出类型,但并非包含所有,比如gui中的输入输出以及网页上的输入和输出。java.io主要涉及文件,管道,网络连接,内存缓存以及java的标准输入输出等(Ssytem.out,System.in,System.error)。

这里有一个流的概念,这是java io中的一个核心概念,我们可以在数据流中读取数据,也可以通过数据流去向目标写入数据。记得在刚开始接触流的时候总是分不清什么时候使用输入流什么时候输出流,相信这也是初学者们刚开始容易弄混淆的地方。其实只要记住这里的输入、输出是相对你写的程序本什么而言。输入流指你从数据源处读取数据,输出流则是你向目标写入数据。

在java.io中流既可以是字节流也可以是字符流,下图可以简单的表述出其运行状态:

InputStrem/Reader与源文件进行关联,OutputStream/Writer与目标文件进行关联。

在java.io包中,有着丰富的以上四个基类的子类,来帮助我应付各种情况下的io操作,具体分为以下几种情况:

 

  1. 文件访问。
  2. 网络访问。
  3. 内存缓存访问。
  4. 线程内部通信(管道)。
  5. 缓冲。
  6. 过滤。
  7. 解析。
  8. 读写文本。
  9. 读写基本数据类型。
  10. 读写对象。
下图包括了一些java.io中的一些io类:
不同的类对应着不同的应用场景,我们需要学会什么时候使用什么样的类来实现我们的需求。
 
在之后的篇幅中将详细的讲述一些不同情况下io的使用方法。
 
 
 

 

posted @ 2017-08-11 10:21  moonfish  阅读(209)  评论(0编辑  收藏  举报