java转换流有什么用?

在程序开发中,有时会遇到字节流和字符流之间需要进行转换的可能。在java.io包中提供了两个类可以将字节流转换为字符流,它们分别是InputStreamReader和OutputStreamWriter。

OutputStreamWriter是Writer的子类,能够将一个字节输出流转换成字符输出流,方便直接写入字符,而InputStreamReader是Reader的子类,能够将一个字节输入流转换成字符输入流,方便直接读取字符。下面通过案例学习如何将字节流转换为字符流,为了提高读/写效率,通过字符缓冲流实现转换的操作,如文件5-9所示。

  文件5-9 Example09.java

package com.itheima.example;import java.io.*;public class Example09 {    public static void main(String[] args) throws Exception {        //创建字节输入流        FileInputStream input=new FileInputStream("read.txt");        //将字节输入流转换成字符输入流        InputStreamReader streamReader=new InputStreamReader(input);        //赋予字符输入流对象缓冲区        BufferedReader bufferReader=new BufferedReader(streamReader);        //创建字节输出流        FileOutputStream output=new FileOutputStream("dest2.txt")        //将字节输出流转换成字符输出流        OutputStreamWriter streamWriter=new OutputStreamWriter(output);        //赋予字符输出流对象缓冲区        BufferedWriter bufferWriter=new BufferedWriter(streamWriter);        String line=null;        //判断是否读到文件末尾        while ((line=bufferReader.readLine()) !=null) {            bufferWriter.write(line);        //输出读取到的文件        }        bufferReader.close();        bufferWriter.close();    }}

程序运行结束后,按F5键刷新chapter05项目后打开dest2.txt文件,执行结果如图5-5所示。

java转换流有什么用?

图5-15 dest2.txt

在文件5-9中,实现了字节流和字符流之间的转换,将字节流转换为字符流,从而实现直接对字符的读/写。需要注意的是,在使用转换流时,只能针对操作文本文件的字节流进行转换,如果字节流操作的是图片或者音频,此时转换为字符流就会造成数据丢失。

文章来源于:王晴儿网页设计博客 欢迎分享交流,转载请注明出处

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/262444.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
黑马程序员黑马程序员订阅用户
上一篇 2023年5月8日 01:08
下一篇 2023年5月8日 01:08

相关推荐

  • java教程之高性能并发计数器之巅峰对决

    并发计数器各个方案介绍方案概述jdk5提供的原子更新长整型类 AtomicLongsynchronizedjdk8提供的 LongAdder 【单机推荐】Redisson分布式累加器【分布式推荐】方案介绍jdk5提供的原子更新长整型类 AtomicLong在JDK1.5…

    2023年5月12日 编程分享
    010
  • Java程序员饱和了?

    随着软件开发行业的蓬勃发展,程序员的需求量日益增长,其中以Java开发尤其显著,越来越多人选择去学习Java编程语言,找一份好工作。然而,随着Java的火爆,质疑的声音也越来越大。前几日播妞看到有人说:现在Java…

    2023年5月13日
    01
  • 说说支付宝防骗码有什么用。

    首先防骗码是各地公安部门与“支付宝安全中心”联合推出的反诈类安全教育服务。旨在防止大家上当受骗,现已推广到全国绝大多数城市,不过获取防骗码需要参与答题才可以领取。支付宝为了防止用户被骗,推出来了一个防…

    2023年10月29日
    010
  • Java中有没有goto?_java基础知识点

      在Java编程语言中,没有像其他一些编程语言(如C/C++)中的显式goto语句。这是出于一些设计和编程原则的考虑,以避免复杂和不易维护的代码。然而,Java提供了其他控制流语句来实现类似的功能,如条件语句和循环。…

    2023年8月18日
    03
  • 小编分享全网营销推广软件有什么用,效果怎么样。

    如今已经进入了互联网时代,对于很多企业来说,他们知道全网营销的推广威力,于是就安排外面的电脑公司给企业建立了网站,有些企业老板听说关键词需要优化,要求对方也做了此事,并且在网络上看到什么样好的推广方…

    2023年6月7日
    05
  • Java中super关键字怎样使用?

    当子类重写父类的方法后,子类对象将无法直接访问父类被重写的方法。为了解决这个问题,在Java中专门提供了一个super关键字来访问父类的成员,例如访问父类的成员变量、成员方法和构造方法。下面分两种情况来学习一…

    2023年5月15日 编程分享
    09
  • 说说手套新品标有什么用。

    在宝贝上新的时候,很多宝贝都会被打上新品的标签。这个打上了新品标签的商品,能够获得很大的自然流量。而且不管是在直通车还是淘宝客、钻展中都会有很好的展现。淘宝是支持商家上新品的,因为只有源源不断地注入…

    2023年10月27日
    01
  • 小编分享网站公关对SEO有什么用。

    这几年的时间里,因为信息量越来越大,信息越来越爆炸,传递的速度也越来越快,相比于广告来说,公关越来越让企业重视其价值与分量,而同时公关传播效果随着公关行业的急速发展而要求越来越高。那么公关与seo有何关…

    2023年6月22日
    03

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息