黑马程序员——关于IO流的分类整理
2013-07-23 18:47
78 查看
----------------------
ASP.Net+Android+IO开发;.Net培训、期待与您交流! ----------------------
所谓IO,就是inout,即程序的输入输出。首先要理解出入是以程序为参照,数据传入到程序中叫做输入,程序把数据发送到程序外部叫输出。
由于对数据操作有两种类型:字节和字符,所以IO流中根据数据操作的类型不同,可以分为字节流和字符流。
IO流中有四大天王,都是抽象类。分别是InputStream字节输入流、OutputStream字节输出流、Reader字符输入流、Writer字符输出流。由这四个类可以引申出更多的类,比如xxxInputStream、xxxOutputStream、xxxReader、xxxWriter,其中看出Reader、Writer为字符流,xxxStream:字节流
另外,IO流也可以按功能分类分为:
1、内存流,根据内存里的对象(byte[],char[],String对象)构建出的流。比如
ByteArrayInputStream、ByteArrayOutputStream:操作字节数组的流
CharArrayReader、CharArrayWriter:操作字符数组的流
StringReader、StringWriter:操作字符串的流
2、节点流,根据数据源(文件,网络)构建出来的流
FileInputStream、FileOutputStream
FileReader、FileWriter
其中,FileInputStream &FileReader 应用上的区别:
FileInputStream,FileOutputStream 适用于用来操作文件原数据;
FileReader,FileWriter 适用于用来操作文件里的文本内容。
3、处理流,依赖于另外一个流构建出来的新的流,处理流为基本的节点流或者内存流提供额外的功能或提升效率
3.1、缓冲流:内部有个缓冲区,用来高效的读写。
BufferedInputStream、BufferedOutputStream
BufferedReader,比BufferedInputStream多了一个readLine(),用来读取一行文本
BufferedWriter,比BufferedOutputStream多了newLine(),用于换行;
3.2、原始数据流,读完则抛出EOFException。
DataInputStream、DataOutputStream
3.3、对象流,读完则抛出EOFException
ObjectInputStream、ObjectOutputStream
对于这两个对象要序列化,具体操作见下一篇博客《IO流中常见流的用法》
3.4、打印流
PrintStream字符打印流
PrintWriter字节打印流
3.5、转换流,字节流和字符流之间转换的纽带。
InputStreamReader:字节输入流转为字符输入流
OutputStreamWriter:字符输出流转为字节输出流
----------------------
ASP.Net+Android+IOS开发、.Net培训、期待与您交流!----------------------
详细请查看:http://edu.csdn.net
ASP.Net+Android+IO开发;.Net培训、期待与您交流! ----------------------
所谓IO,就是inout,即程序的输入输出。首先要理解出入是以程序为参照,数据传入到程序中叫做输入,程序把数据发送到程序外部叫输出。
由于对数据操作有两种类型:字节和字符,所以IO流中根据数据操作的类型不同,可以分为字节流和字符流。
IO流中有四大天王,都是抽象类。分别是InputStream字节输入流、OutputStream字节输出流、Reader字符输入流、Writer字符输出流。由这四个类可以引申出更多的类,比如xxxInputStream、xxxOutputStream、xxxReader、xxxWriter,其中看出Reader、Writer为字符流,xxxStream:字节流
另外,IO流也可以按功能分类分为:
1、内存流,根据内存里的对象(byte[],char[],String对象)构建出的流。比如
ByteArrayInputStream、ByteArrayOutputStream:操作字节数组的流
CharArrayReader、CharArrayWriter:操作字符数组的流
StringReader、StringWriter:操作字符串的流
2、节点流,根据数据源(文件,网络)构建出来的流
FileInputStream、FileOutputStream
FileReader、FileWriter
其中,FileInputStream &FileReader 应用上的区别:
FileInputStream,FileOutputStream 适用于用来操作文件原数据;
FileReader,FileWriter 适用于用来操作文件里的文本内容。
3、处理流,依赖于另外一个流构建出来的新的流,处理流为基本的节点流或者内存流提供额外的功能或提升效率
3.1、缓冲流:内部有个缓冲区,用来高效的读写。
BufferedInputStream、BufferedOutputStream
BufferedReader,比BufferedInputStream多了一个readLine(),用来读取一行文本
BufferedWriter,比BufferedOutputStream多了newLine(),用于换行;
3.2、原始数据流,读完则抛出EOFException。
DataInputStream、DataOutputStream
3.3、对象流,读完则抛出EOFException
ObjectInputStream、ObjectOutputStream
对于这两个对象要序列化,具体操作见下一篇博客《IO流中常见流的用法》
3.4、打印流
PrintStream字符打印流
PrintWriter字节打印流
3.5、转换流,字节流和字符流之间转换的纽带。
InputStreamReader:字节输入流转为字符输入流
OutputStreamWriter:字符输出流转为字节输出流
----------------------
ASP.Net+Android+IOS开发、.Net培训、期待与您交流!----------------------
详细请查看:http://edu.csdn.net
相关文章推荐
- 黑马程序员_关于分类的总结
- 黑马程序员__关于学习IO流字符流的缓冲区总结
- 黑马程序员——IO流(一)概述及分类
- 黑马程序员-关于ms sqlserver 内置函数整理
- 黑马程序员__关于学习IO流中的字节流的总结
- 黑马程序员——io流的基本概况和分类
- 关于IO流的分类及对象序列化与反序列化操作
- 黑马程序员:关于我对IO流的总结以及习题(面试必考项目)
- IO流,关于File类的一些;以及输入输出流 整理
- 黑马程序员——关于IO流中BufferedReader底层机制
- 关于培训的整理资料——分类需要维护
- 黑马程序员_IO流的要点整理
- 黑马程序员-----关于IO流学习日志
- 黑马程序员-关于Java IO流的一些理解
- 关于文件io流的整理学习
- 黑马程序员_笔迹二_关于IO流
- 黑马程序员----,编译异常,运行异常。自定义异常,IO流技术,分类,
- 黑马程序员-关于Eclipse的配置,快捷键的整理
- 黑马程序员__关于学习Java中IO流的FileWriter的总结
- 黑马程序员__关于学习Java的IO流中FileReader的总结