黑马程序员——I/O流的常用基类
来源:互联网 发布:淘宝开店本人营业执照 编辑:程序博客网 时间:2024/05/14 17:37
I/o的四个基类:
字节流常用抽象基类:InputStream,OutputStream
字符流常用抽象基类:Reader,Writer
对于InputStream/Reader而言,他们把输入设备抽象成一个“水管”,这个“水管”里的每一个“水滴”就是一个输入流。
输入流使用隐式的记录指针来表示当前正准备从哪个“水滴”开始读取,每当程序从InputStream或Reader里读取一个或者多个“水滴”后,记录指针自动向后移动
对于OutputStream/Writer而言,他们同样把输入输出设备抽象成“水管”,只是这个水管里面没有任何水滴。当执行输出时,程序相当于一次把”水滴“放入到水管中,输出流采用隐式指针来标识当前水滴即将放入的位置,每当程序向OutputStream/Writer里输出一个或者多个水滴之后,记录将自动向后移动。
I/o流的所有类都是由这四个基类派生出来的由这四个类派生出来的子类名称都是以其父类名作为子类的后缀。
如:InputStream的子类FileInputStream
Reader的子类FileReader
字节流和字符流的对比:
字节流由字节组成,主要处理二进制数据,它是按字节来处理的流。
我们日常处理的很多数据,都是文本,所以在字节流之外,又提出了字符流的概念,直接按照Java虚拟机的encode来处理,也就是在输出流和输入流之间 进行字符集的转换
字节流可以处理任何对象而字符流只能处理字符,字符串等。但是在处理字符对象时字符流更加方便。
I/o的四个基类都是抽象的所以在不能直接使用基类创建对象,需要使用这四个基类的子类来创建对象。
比如想要将一个文本的Test13的内容写入b.txt。就要借助字符流基类Reader的子类FileReader和Writer的子类FileWriter
代码事例:
通过Reader的子类和writer将Test13.java的内容copy到了b.txt中
- 黑马程序员——I/O流的常用基类
- 黑马程序员—I/O
- 黑马程序员-I/O流的学习
- 黑马程序员——I/O
- 黑马程序员——I/O
- 黑马程序员———I/O流
- 黑马程序员———I/O流
- 黑马程序员——java中的I/O流
- 黑马程序员——浅谈I/O流
- 黑马程序员——I/O(输入/输出)流
- 黑马程序员——Java基础--- I/O输入输出流
- 黑马程序员——I/O流(一)
- 黑马程序员——I/O流(二)
- 黑马程序员——Java I/O与流
- 黑马程序员—java基础复习—I/O流
- 黑马程序员--I/O流
- 黑马程序员-----I/O流
- 黑马程序员------I/O流
- D3D绘制字体
- Vijos P1021Victoria的舞会1
- 剑指offer: 从上往下打印二叉树(树)
- 开始玩hadoop7--hadoop 2.6.0 在eclipse里安装(第一个map程序)
- Linux主流桌面环境简单介绍
- 黑马程序员——I/O流的常用基类
- 【c语言】字符串替换空格:请实现一个函数,把字符串中的每个空格替换成“%20”
- android编辑访问网络图片
- 减少HTTP请求之合并图片详解(大型网站优化技术)
- uc/os-ii信号量集
- 剑指offer:用两个栈实现队列(栈和队列)
- IntelliJ IDEA 14.1.4 导入android项目报错解决方法.md
- IntelliJ IDEA Maven的工程,未结束的字符串文字
- 文章标题