标签:过程 style 磁盘 output 需要 输入流 键盘 iter 单位
什么是IO:(Input/Output):输入和输出。
IO设备:和电脑通信的设备。
输入设备:麦克风、扫描器、键盘、鼠标等。
输出设备:显示器,打印机,投影仪,耳机,音响等。
为什么程序需要IO呢?
案例1:打游戏操作,得分比较高的,存储游戏信息。
此时需要把游戏中的数据存储起来,只能存储在文件中。
案例2:打游戏操作,查看游戏英雄榜的数据存储在一个文件中。
此时游戏程序需要去读取文件中的数据,并显示在游戏中。
案例3:上传和下载操作。
IO操作是一个相对的过程,一般的,我们在程序角度来思考(程序的内存)
程序需要数据:把数据流入到程序中,输入。
程序需要保存数据,把数据传递给别人:输出。
IO流的分类和操作模板:
IO流的分类,站在不同的角度,分类的方式是不一样的:
1. 根据流向划分:输入流和输出流。
2. 根据数据的单位划分:字节流和字符流。
3. 根据功能的划分:节点流和包装流。
四大基流:字节输入流,字节输出流,字符输出流,字符输入流
字节流 | 字符流 | |
输出流 | OutputStream | Writer |
输入流 | InputStream | Reader |
四大基流都是抽象类:其他流都是继承于这四大类的。
我们不能创建四大基流的对象,只能创建其子类对象。
无论什么流,都有close方法,用来关闭资源。
如果操作文件,就开通一个流对象关联我们的磁盘文件,如果不关闭资源,那么磁盘的文件一直被程序所引用着,不能删除,也不能修改。
操作IO流的模板:
拿文件举例:
1. 创建源或目标对象
输入操作:把文件中的数据流想到程序中,此时文件是源,程序是目标。
输出操作:把程序中的数据流向到文件中,此时文件是目标,程序是源。
2. 创建IO流对象
输入操作:创建输入流对象
输出操作:创建输出流对象
3. 具体的IO操作
输入操作:输入流对象的read方法。
输出操作:输出流对象的write方法。
4. 关闭资源
输入操作:输入流对象.close();
输出操作:输出流对象.close();
标签:过程 style 磁盘 output 需要 输入流 键盘 iter 单位
原文地址:http://www.cnblogs.com/wenxudong/p/6882996.html