IO流 p9 转换流-InputStreamReader 和 OutputStreamWriter

这篇具有很好参考价值的文章主要介绍了IO流 p9 转换流-InputStreamReader 和 OutputStreamWriter。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

转换流-InputStreamReader 和 OutputStreamWriter

  • 介绍

    1. InputStreamReader:Reader的子类,可以将InputStream(字节流)包装成Reader(字符流);
    2. OutputStreamWriter:Writer的子类,实现将OutputStream(字节流)包装成Writer(字符流);
    3. 当处理纯文本数据时,如果使用字符流效率更高,并且可以有效解决中文问题,所以建议将字节流转换成字符流;
    4. 可以在使用时指定编码格式(比如 utf-8,gbk,gb2312,ISO8859-1等),解决乱码问题;
  • InputStreamReader

    IO流 p9 转换流-InputStreamReader 和 OutputStreamWriter

    代码演示:文章来源地址https://www.toymoban.com/news/detail-474279.html

    import java.io.*;
    
    /**
     * @author: 86199
     * @date: 2023/5/7 17:18
     * @description: 演示使用 InputStreamReader 转换流解决中文乱码问题
     * 将字节流 FileInputStream 转换成字符流 InputStreamReader,指定编码 gbk/utf-8
     */
    public class InputStreamReader_ {
        public static void main(String[] args) throws IOException {
            String filePath = "e:\\a.txt";
            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(new FileInputStream(filePath), "gbk"));
    
            //读取
            String s = bufferedReader.readLine();
            System.out.println("读取内容 = " + s);
            //关闭流
            bufferedReader.close();
        }
    }
    
    
  • OutputStreamWriter

    IO流 p9 转换流-InputStreamReader 和 OutputStreamWriter

    代码演示:

    package com.hsp.transformation;
    
    import java.io.*;
    
    /**
     * @author: 86199
     * @date: 2023/5/7 17:31
     * @description: 演示 OutputStreamWriter 使用,把FileOutputStream 字节流,转成OutputStreamWriter
     * 指定处理的编码 gbk/utf-8/utf8
     */
    public class OutputStreamWriter_ {
        public static void main(String[] args) throws IOException {
            String filePath = "e:\\test.txt";
            String charSet = "utf8";
            OutputStreamWriter outputStreamWriter = new OutputStreamWriter(new FileOutputStream(filePath), charSet);
    
            outputStreamWriter.write("只因你太美");
    
            outputStreamWriter.close();
    
            System.out.println("文件按照" + charSet + "保存成功");
        }
    }
    
    

到了这里,关于IO流 p9 转换流-InputStreamReader 和 OutputStreamWriter的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 镜像法的理解——工程电磁场 P9

    此处有几点理解需要格外谈一下 1. 只有在有电力线的地方,才会产生电场的作用 2.对于下平面的分析,下平面如果存在电荷的话,必然存在电力线,那么从无穷远处做功到此处,必然会存在电势,而表面接地,电势为0,两者相矛盾 3.对于镜像电荷的等效,我们可以用另一个

    2024年02月09日
    浏览(41)
  • P9-CNN学习1.1-VggNet

    目录 一.Abstract 二.Introduction 三.ConvNet Configuration 3.1Architecture 3.2Configuration 3.3Discussion 四.Classification Framework 4.1Training 4.2Testing 4.3Implementation Detail 五.Classification Experiments 5.1Single Scale Evaluation 5.2Multi Scale Evaluation 5.3Multi Crop Evaluation 5.4Convent Fusion 六.Conclusion 七.Innovation point 一.Abstra

    2024年02月14日
    浏览(40)
  • 从零开始学习 Java:简单易懂的入门指南之IO缓冲流、转换流(三十二)

    缓冲流,也叫高效流,是对4个基本的 FileXxx 流的增强,所以也是4个流,按照数据类型分类: 字节缓冲流 : BufferedInputStream , BufferedOutputStream 字符缓冲流 : BufferedReader , BufferedWriter 缓冲流的基本原理,是在创建流对象时,会创建一个内置的默认大小的缓冲区数组,通过缓冲

    2024年02月08日
    浏览(73)
  • 【从入门到起飞】IO高级流(1)(缓冲流,转换流,序列化流,反序列化流)

    🎊专栏【JavaSE】 🍔喜欢的诗句:天行健,君子以自强不息。 🎆音乐分享【如愿】 🎄欢迎并且感谢大家指出小吉的问题🥰 在代码中使用缓冲流(Buffered Streams)有许多好处,特别是在处理I/O操作时,它们可以显著提高性能和效率。缓冲流是一种在内存中创建缓冲区的I/O流,

    2024年02月08日
    浏览(45)
  • 【闪击Linux系列P9】程序员一定要了解的计算机管理理念——描述与组织

    ​ 前言 大家好吖,欢迎来到 YY 滴 Linux系列 ,热烈欢迎! 本章主要内容面向接触过Linux的老铁,从操作系统层面向大家介绍进程: 主要内容含: 欢迎订阅 YY 滴Linux专栏!更多干货持续更新!以下是传送门! 订阅专栏阅读: YY 的《Linux》系列 ❀❀❀❀❀ 【Linux】Linux环境搭建

    2024年02月12日
    浏览(44)
  • 自动化测试:Selenium高级操作!,看完阿里P9大牛的“软件测试成长笔记”我悟了

    分享他们的经验,还会分享很多直播讲座和技术沙龙 可以免费学习!划重点!开源的!!! qq群号:110685036 Switch_to切换frame 如果元素在html的frame或iframe中,则无法直接定位到元素。需要先切换到该frame中,再进行定位及其他操作。 相关方法: driver.switch_to.frame(frame_reference)

    2024年04月25日
    浏览(72)
  • 《UE5_C++多人TPS完整教程》学习笔记8 ——《P9 访问 Steam(Acessing Steam)》

    本文为B站系列教学视频 《UE5_C++多人TPS完整教程》 —— 《P9 访问 Steam(Acessing Steam)》 的学习笔记,该系列教学视频为 Udemy 课程 《Unreal Engine 5 C++ Multiplayer Shooter》 的中文字幕翻译版,UP主(也是译者)为 游戏引擎能吃么。 本节课将接着上节课 《P8 为项目配置 Steam(Confi

    2024年02月19日
    浏览(49)
  • 【Java基础教程】(四十五)IO篇 · 中:转换流、内存流和打印流(探索装饰设计模式与PrintStream类的进阶),文件操作案例实践、字符编码问题~

    掌握内存操作流、转换流、打印流的使用; 掌握文件复制操作; 掌握字符的主要编码类型以及乱码问题产生的原因; 虽然字节流与字符流表示两种不同的数据流操作,但是这两种流彼此间是可以实现互相转换的,而要实现这样的转换可以通过 InputStreamReader 、 OutputStreamWrit

    2024年02月16日
    浏览(37)
  • IO模型-信号驱动IO

    linux内核中存在一个信号SIGIO,这个信号就是用于实现信号驱动IO的。当应用程序中想要以信号驱动IO的模型读写硬件数据时,首先注册一个SIGIO信号的信号处理函数,当硬件数据就绪,硬件会发起一个中断,在硬件的中断处理函数中向当前进程发送SIGIO信号,此时进程捕获到SI

    2024年02月14日
    浏览(35)
  • 面试题:简单说一下阻塞IO、非阻塞IO、IO复用的区别 ?

    在《Unix网络编程》一书中提到了五种IO模型,分别是:阻塞IO、非阻塞IO、IO复用、信号驱动IO以及异步IO。本篇文章主要介绍IO的基本概念以及阻塞IO、非阻塞IO、IO复用三种模型,供大家参考学习。 计算机视角理解IO: 对于计算机而言,任何涉及到计算机核心(CPU和内存)与其

    2024年01月22日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包