`

转换流学习

阅读更多

package com.amuse.io;

import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;

/**
 * TODO Comment of OutputStreamWriteTest
 * @author yongchun.chengyc
 *
 */
public class OutputStreamWriterTest {

    public static void main(String[] args) throws IOException {
        //OutputStreamWriter 是输出流 是字符流通向字节流的桥梁:
        //可使用指定字符编码的将要写入流中的字符编码成字节。它使用的字符集可以由名称指定或显式给定,否则将接受平台默认的字符集。
        OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("E:\\io-test.txt"));
        osw.write("hello world,你好世界-->" + osw.getEncoding());
        //osw.flush();
        osw.close();

        osw = new OutputStreamWriter(new FileOutputStream("E:\\io-test.txt", true), "GBK");
        osw.write(" I am spring! 我是spring-->" + osw.getEncoding());
        //osw.flush();
        osw.close();
    }

}
 InputStreamReader 是字节流通向字符流的桥梁:它使用指定的charset 读取字节并将其解码为字符。它使用的字符集可以由名称指定或显式给定,或者可以接受平台默认的字符集。 

OutputStreamWriter 是字符流通向字节流的桥梁:可使用指定的charset将要写入流中的字符编码成字节。它使用的字符集可以由名称指定或显式给定,否则将接受平台默认的字符集。
形象理解就是:
InputStreamReader是字符“打包员”,把字节打包成字符;
OutputStreamWriter是字符“拆包员”,把字符拆成字节。
InputStreamReader是字节转字符的流(字节流通向字符流的桥梁),
OutputStreamWriter是字符转字节的流(字符流通向字节流的桥梁)。

分享到:
评论

相关推荐

    JavaIO实例_字节流_字符流_缓冲流_转换流IODemo

    - 当我们处理非ASCII编码的数据时,如UTF-8、GBK等,就需要使用转换流来确保字符的正确转换。 在IODemo示例中,可能包含有以下内容: - 创建和使用`FileInputStream`和`FileOutputStream`进行文件的读写操作。 - ...

    PPt转换为流媒体方法

    ### PPt转换为流媒体方法 #### 概述 随着信息技术的发展,教育方式也在不断创新,尤其是在英语视听教学领域。利用现代技术手段,如PowerPoint(简称PPt)和流媒体技术,可以有效提升教学质量,增强学生的参与度和...

    21.【缓冲流、转换流、序列化流、打印流】(1)_缓冲流_源码

    Java中的转换流(`InputStreamReader`和`OutputStreamWriter`)用于在字节流和字符流之间进行转换。它们是连接字节流和字符流的桥梁,因为Java的I/O系统是基于字节的,但字符集如UTF-8、GBK等是以字符为单位的。...

    《JAVA_IO流学习总结》

    四、转换流 - InputStreamReader和OutputStreamWriter作为字节流和字符流之间的桥梁,可以根据指定的字符集进行转换。 五、对象序列化流 - ObjectInputStream和ObjectOutputStream实现了Java对象的序列化和反序列...

    IO流学习(字节流 字符流 文本流)!

    转换流如InputStreamReader和OutputStreamWriter,它们起到了字节流和字符流之间的桥梁作用,可以根据指定的字符编码将字节流转换为字符流,反之亦然。 此外,Java的IO流还提供了一些高级特性,比如**过滤流**。...

    Python-MusiCoder基于深度学习的轻量化音乐质感转换系统

    MusiCoder可能采用了如WaveNet或Magenta等已有的深度学习模型,这些模型擅长处理时序数据,如音乐音频流。通过训练,模型能学习到不同音乐质感之间的转换规律,并能够对新的音乐片段进行相应的转换。 **五、轻量化...

    用Proteus学习51单片机之AD转换

    在标题《用Proteus学习51单片机之AD转换》中,作者提出了一种通过模拟软件Proteus来学习51单片机模拟到数字转换(AD转换)的过程,特别指出了ADC0804这一8位并行AD转换芯片的使用方法,强调了与以前使用的锁存器74LS...

    强制类型转换说明_LabVIEW中关于强制类型转换的使用_labview中tcp_

    6. 学习资源:为了更好地理解和掌握LabVIEW中的强制类型转换,可以参考“强制类型转换说明.pdf”文档,它应该提供了详细的示例和教程,帮助你深入理解这个关键的编程技巧。 通过以上介绍,你应该对LabVIEW中强制...

    JAVA_IO流学习总结

    在Java编程语言中,IO流是一种非常重要的...以上内容构成了Java IO流学习的基础知识框架,对于深入理解和应用Java中的IO流操作提供了重要的理论支撑。在实际开发中,对IO流的灵活应用和管理是保证程序高效运行的关键。

    C# 将图片文件转换成字节流存储在TXT

    本篇将深入探讨如何使用C#将图片文件转换为字节流,并将其存储在TXT文本文件中。 首先,我们需要理解字节流的概念。字节流是数据在计算机内存或磁盘间传输的基本单元,它可以是输入流(读取数据)或输出流(写入...

    javaio流学习总结.pdf

    JavaIO流学习总结 JavaIO流是Java语言中最基本的输入/输出机制,它提供了多种方式来读取和写入数据。下面是JavaIO流的学习总结。 一、 IO流的分类 IO流可以从不同的角度进行分类,包括: * 按流的方向分为:输入...

    easystream 流媒体转换通用工具

    流媒体技术在现代数字化社会中扮演着至关重要的角色,它使得音视频内容能够实时或按需传输,极大地丰富了我们的在线娱乐和学习体验。本文将深入探讨“easystream 流媒体转换通用工具”这一主题,以及与之相关的rtsp...

    pcb.rar_进程 转换 流_进程状态

    本主题将深入探讨“pcb.rar_进程 转换 流_进程状态”的核心概念,包括进程控制块(PCB)、进程状态转换以及流程。 首先,我们需要了解进程控制块(Process Control Block,PCB)。PCB是操作系统用来记录和管理进程...

    工作流学习基础

    工作流学习基础是IT行业中一个重要的概念,尤其在企业信息化管理、流程自动化和协同工作中扮演着关键角色。工作流指的是在组织内部或跨组织中,按照预定规则和步骤执行的一系列业务活动或任务的有序集合。它可以帮助...

    csf视频讲座批量转换压缩程序试验版

    wma格式广泛用于音频文件,特别是在Windows操作系统环境中,而flv则是网络流媒体中的常见格式,适合在网络上传输和在线播放。 批量转换功能是该程序的一大亮点。它允许用户一次性添加多个csf视频文件,程序会逐一...

    WebEx的转换工具,转WMV格式

    对于那些需要频繁进行格式转换或者有特殊需求的用户,可能还需要学习和掌握更多的视频处理知识,例如了解不同编码格式的特点,以及如何优化转换设置以平衡文件质量和大小。 总之,WebEx的转换工具是将.WRF文件转为...

    Java软件开发实战 Java基础与案例开发详解 13-6 转换流 共6页.pdf

    ### Java软件开发实战:转换流知识点详解 #### 13-6 转换流 在Java中,处理文本数据时经常会遇到不同字符集的转换需求。为了方便地完成字符编码与解码的过程,Java提供了两种特殊的流——`InputStreamReader`和`...

    kettle的简单数据转换demo

    Kettle,又称Pentaho Data Integration...这个“kettle的简单数据转换demo”是一个学习Kettle基本操作和理解数据转换流程的好起点。通过实践,你可以逐步掌握Kettle的强大功能,并将其应用于实际的数据集成项目中。

    ffmpeg flv视频转换

    通过深入学习和实践,你可以充分利用 FFmpeg 来满足各种多媒体处理需求。在处理 FLV 转 MKV 的过程中,确保你的系统资源充足,因为视频编码可能需要较高的 CPU 和内存资源。同时,转换后的文件大小可能会有所不同,...

    视频转换学习资料.pdf

    根据提供的文件信息,我们可以得知这是一份关于视频转换技术的学习资料。文档中涉及到的关键知识点包括容器(Container)、流(Stream)、帧(Frame)、编解码器(Codec),以及FFmpeg工具的使用。 1. 容器(Container):在...

Global site tag (gtag.js) - Google Analytics