InputStreamReader OutputStreamWriter

本文详细介绍了Java中InputStreamReader和OutputStreamWriter的使用方法,包括如何将字节流转换为字符流进行读取,以及如何将字符流转换为字节流进行输出或保存。通过示例代码展示了装饰模式的应用,以及如何利用缓存技术提高IO操作效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 


 

InputStreamReader对象

java.lang.Object
  java.io.Reader
      java.io.InputStreamReader

java.lang.Object
  java.io.Reader
      java.io.BufferedReader

将字节流转换为字符流

用法:

 所以可以使用装饰模式对InputStreamReader进行装饰,然后输放到缓存中,利用缓存技术的read.readLine()进行一行一行读取

 

 

 

 

OutputStreamWriter对象

java.lang.Object

----java.io.Writer

 --------java.io.OutputStreamWriter

 

java.lang.Object
  java.io.Writer
      java.io.BufferedWriter

 

将字符流转换为字节流输出或保存

 

用法:

 所以可以使用装饰模式对OutputStreamWriter进行装饰,然后输放到缓存中,如果想要输出的话,首先需要writer.flush();将流中的信息刷出显示或输出;

 

 

 

 

 示例:

 try {
   BufferedReader br = new BufferedReader(new InputStreamReader(
     System.in));

   PrintStream ps = System.out;
   BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(ps));
   String len = null;

   while ((len = br.readLine()) != null) {

    if ("over".equals(len)) {
     break;
    }

    bw.write(len);
    bw.newLine();
    bw.flush();
   }

  } catch (IOException e) {
   e.printStackTrace();
  }

 



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值