java字节流与字符流之间的转换

  • 字节流转为字符流

//InputStreamReader 使用构造函数将字节流转为字符流
InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream("src/a.txt"));
  • 字符流转为字节流

//OutputStreamWriter 使用构造函数将字节输出流转为字符输出流
OutputStreamWriter outputStreamWriter = new OutputStreamWriter(new FileOutputStream("src/b.txt"));

以上为网上查找相关问题时出现最多的结果。

大大的疑问

明明两个都是通过构造函数将字节流转为了字符流?是不是写错了?

  • 网上解答:“字节流转换成字符流”是指API的转换,“字符流转换成字节流”是指在write的时候数据的转换

个人理解

  • new InputStreamReader(new FileInputStream(“src/a.txt”)) 返回的是一个字符输入流,此时可以理解通过构造方法将传入的字节流对象转换为字符流;
  • new OutputStreamWriter(new FileOutputStream(“src/b.txt”)) 虽然同样是返回一个字符流,但是在write 的时候最终写入的还是 二进制字节文件;

个人学习笔记,欢迎纠错补充。
2022.09.16 23:24

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值