OutputStreamWriter和InputStreamReader学习随笔


    //从键盘读入字节数据  字节流
   InputStream in = System.in;

   //InputStreamReader是转换流   把字节流转换成字符流 
InputStreamReader isr = new InputStreamReader(in);

  //为了提高效率,用BufferedReader装饰字符流isr
  BufferedReader bur = new BufferedReader(isr);
三合一:
BufferedReader bur = new BufferedReader(new InputStreamReader(System.in));

String line = buf.readLine();
====================================================
//字节流,输出到控制台上。

OutputStream out  = System.out; //成功到达!

/*
    OutputStreamWriter 是转换流  把字节流转成字符流。
   但其实它是字符流到字节流的桥梁,因为写入是从内存写到硬盘上
   也就是说是从   缓冲区 ->  文件   缓冲区为字符流,文件为字节流。中间的就是转换流OutputStreamWriter
   写入方向为:   缓冲流 ->  转换流 -> 文件流
   */
//第三步,它作为字符流到字节流的桥梁。自然是把字符流osw转换成字节流out啦
OutputStreamWriter osw = new OutputStreamWriter(out);
	
//为了提高写的效率,用BufferWriter装饰字符流osw
BufferedWriter buw = new BufferedWriter(osw);//第二步,缓冲区buw中有了字符line,也到了被其装饰的字符流osw中

三合一:	
BufferedWriter buw = new BufferedWriter(new OutputStreamWriter(System.out));这是输出到控制台上

buw.write(line);//第一步,这是提高效率的缓冲流进行的write操作,当然是往缓冲区里写啦
总结:看后缀名。后缀Writer Reader操作的是字符流,而后缀InputStream和OutputStream操作的是字节流。
因此,转换流本身是字符流。
阅读更多
个人分类: JavaSe
上一篇单链表的创建,删除,插入,以及合并
下一篇接口和多态的区别与练习小总结
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭