JAVA 的IO操作(六)OutputStreamWriter类与InputStreamReader类
来源:互联网 发布:销售数据分析ppt案例 编辑:程序博客网 时间:2024/05/09 08:17
OutputStreamWriter类与InputStreamReader类
整个IO包实际上分为字节流和字符流,但是除了这两个流之外,还存在一组字节流-字符流的转换类。
OutputStreamWriter:是Writer的子类,将输出的字符流变为字节流,即将一个字符流的输出对象变为字节流输出对象。
InputStreamReader:是Reader的子类,将输入的字节流变为字符流,即将一个字节流的输入对象变为字符流的输入对象。
如果以文件操作为例,则内存中的字符数据需要通过OutputStreamWriter变为字节流才能保存在文件中,读取时需要将读入的字节流通过InputStreamReader变为字符流,转换步骤如图12-7所示。
(点击查看大图)图12-7 转换步骤从图12-7中可以清楚地发现,不管如何操作,最终全部是以字节的形式保存在文件中。OutputStreamWriter的构造方法如下:
- public OutputStreamWriter(OutputStream out) ( 变的是流 变成字符流 才能对字符进行操作啊)
范例:将字节输出流变为字符输出流
import java.io.* ;public class OutputStreamWriterDemo01{public static void main(String args[]) throws Exception{// 所有异常抛出File f = new File("d:" + File.separator + "test.txt") ;Writer out = null ;// 字符输出流out = new OutputStreamWriter(new FileOutputStream(f)) ;// 字节流变为字符流out.write("hello world!!") ;// 使用字符流输出out.close() ;}};
程序运行结果:
范例:将字节输入流变为字符输入流
import java.io.* ;public class InputStreamReaderDemo01{public static void main(String args[]) throws Exception{File f = new File("d:" + File.separator + "test.txt") ;Reader reader = null ;reader = new InputStreamReader(new FileInputStream(f)) ;// 将字节流变为字符流char c[] = new char[1024] ;int len = reader.read(c) ;// 读取reader.close() ;// 关闭System.out.println(new String(c,0,len)) ;}};
U提示:FileWriter和FileReader的说明。
从JDK文档中可以知道FileOutputStream是OutputStream 的直接子类,FileInputStream也是InputStream的直接子类,但是在字符流文件中的两个操作类却有一些特殊,FileWriter并不直接是Writer的子类,而是OutputStreamWriter的子类,而FileReader也不直接是Reader的子类,是InputStreamReader的子类,那么从这两个类的继承关系就可以清楚地发现,不管是使用字节流还是字符流实际上最终都是以字节的形式操作输入/输出流的。
0 0
- JAVA 的IO操作(六)OutputStreamWriter类与InputStreamReader类
- java IO操作:转换流--OutputStreamWriter类与InputStreamReader类
- Java IO - InputStreamReader&OutputStreamWriter
- Java IO(十三):InputStreamReader 和 OutputStreamWriter
- 25.Java IO: InputStreamReader && OutputStreamWriter
- Java IO InputStreamReader和OutputStreamWriter
- java中的转换流,OutputStreamWriter类与InputStreamReader
- 转换流--OutputStreamWriter类与InputStreamReader类
- 转换流--OutputStreamWriter类与InputStreamReader类
- 转换流--OutputStreamWriter类与InputStreamReader
- 黑马程序员——java基础 io 转换流的应用(InputStreamReader,OutputStreamWriter)
- Java - IO - 转换流 - InputStreamReader - OutputStreamWriter
- Java-IO之InputStreamReader和OutputStreamWriter
- 5 Java IO:InputStreamReader 和 OutputStreamWriter
- JAVA-OutputStreamWriter()和InputStreamReader()
- IO之转换流-OutputStreamWriter类和InputStreamReader类
- 类 java.io.InputStreamReader
- InputStreamReader类和OutputStreamWriter类
- 数据库设计的三范式
- 委托与事件
- 在内容注入管理中注入新片源,遇到“媒资”过大该怎么办
- IT人 不能一辈子靠技术生存[转]
- SDUT2801/2802_英语系列(一)/(二)(并查集)
- JAVA 的IO操作(六)OutputStreamWriter类与InputStreamReader类
- poj2356(二分图匹配)
- patch file
- 和大家分享一组有趣的问题
- IDEA IDE 的初步使用
- CentOS 6.4 中yum命令安装php5.2.17
- .Net程序员面试所需要的一些技术准备[转]
- 2014年最新Windows8.1、Office2013 最新密钥收集整理,测试可用!
- sicily1145. 校门外的树