• 转换流的两种形式:

    1.InputStreamReader:将字节流转换成字符流。

public OutputStreamWriter(OutputStream out, String charsetName)

    2.OutputStreamWriter:将字符流转换成字节流。

public InputStreamReader(InputStream in, String charsetName)

当无法直接获取源文件,只能取得源文件的字节流形式时,可以使用转换流以避免乱码。

import java.io.*;
/*转换流实例:
   实现字节流、字符流之间的转换,
   当无法直接获取源文件,只能取得源文件的字节流形式时,可以使用转换流以避免乱码。
 */
public class welcome {
    public static void main(String[] args) {
        File src = new File("C:\\Users\\kvnoe\\Desktop\\Jcase\\aaa.txt");
        File dest = new File("C:\\Users\\kvnoe\\Desktop\\Jcase\\bbb.txt");
       try(BufferedReader read = new BufferedReader(//缓冲流
                new InputStreamReader(
                //InputStreamReader:将字节流转换成字符流。
                        new BufferedInputStream(
                                new FileInputStream(src)),"UTF-8"));
            BufferedWriter write = new BufferedWriter(//缓冲流
                    new OutputStreamWriter(
                    //OutputStreamWriter:将字符流转换成字节流。//字符集必须对应
                             new BufferedOutputStream(
                                    new FileOutputStream(dest)),"UTF-8"))) {
           String str = null;
           while((str= read.readLine())!=null){
               write.write(str);
               write.newLine();
           }
           write.flush();
       } catch (FileNotFoundException e) {
           e.printStackTrace();
       } catch (IOException e) {
           e.printStackTrace();
       }
    }
}

Java 处理流--转换流(InputStreamReader和OutputStreamWriter)

相关文章

  1. Java初学笔记27-【InputStreamReader 和 OutputStreamWriter、PrintStream 和 PrintWrite、Properties】

    Java初学笔记27十四、转换流:InputStreamReader 和 OutputStreamWriter3. InputStreamReader4. OutputStreamWriter十五、打印流:PrintStream 和 PrintWrite2. PrintStream类3. PrintWrite类十六、Properties 配置文件类1. 需求引入2. 介绍3. Properties…...

    2023/6/1 14:37:10
  2. Day59(转换流,InputStreamReader,OutputStreamWriter,字符编码,输入,输出流)

    处理流之二:转换流 转换流提供了在字节流和字符流之间的转换 Java API提供了两个转换流: InputStreamReader:将InputStream转换为Reader OutputStreamWriter:将Writer转换为OutputStream 字节流中的数据都是字符时&#xff0c…...

    2023/5/22 22:40:05
  3. 123-转换流的原理-InputStreamReader-OutputStreamWriter

    1编码引出的问题 --FileReader读取GBK格式的文件 会乱码 相当于ide默认的utf-8读取GBK编码的汉字 表示的字节不同会报错 FileReader可以读取IDE默认编码格式UTF-8的文件, 但是FileReader读取系统默认编码(中文系统默认GBK格式)会产生乱码…...

    2023/6/5 5:36:44
  4. IO流中的转换流InputStreamReader和OutputStreamWriter

    通过转换流可以实现字节流和字符流之间的转换 import org.junit.Test;import java.io.*;/*** 处理流之二:转换流的使用* 1.转换流:属于字符流* InputStreamReader: 将一个字节的输入流转换为字符的输入流,相当于解码* OutputStreamWriter:…...

    2023/5/30 15:34:21
  5. Java IO流学习总结五:转换流-InputStreamReader、OutputStreamWriter

    转自:http://blog.csdn.net/zhaoyanjun6/article/details/54923506 本文出自【赵彦军的博客】 类的继承关系 Reader |__ BufferedReader、StringReader、InputStreamReader|__ FileReaderWriter |__ BufferedWriter、StringWriter、OutputStreamWriter|__ FileWrit…...

    2023/6/5 22:12:51
  6. Java-IO流-InputStreamReader与OutputStreamWriter

    Java-IO流-InputStreamReader与OutputStreamWriter 这两个流都是转换流,可以将字节流转换为字符流转换流属于字符流InputSteamReader 将输入字节流------->输入字符流OutputStreamWriter 将输出字符流----->输出字节流原理: 示例: publ…...

    2023/5/19 10:15:54
  7. 字符流和字节流的桥梁InputstreamReader/OutputStreamWriter

    字符流和字节流的桥梁InputstreamReader/OutputStreamWriter 字符流和字节流转换的桥梁InputstreamReader 背景 计算机存储的单位是字节,从持久设备读取到程序中是解码,从程序写到持久设备中是编码不管是编码还是解码,不同字符集编解码成字…...

    2023/5/26 8:59:05
  8. java输入流设置字符集_字符编码与字符集、转换流(InputStreamReader、OutputStreamWriter)...

    1.字符编码编码:字符(能看懂的)-->字节(看不懂的)解码:字节(看不懂的)-->字符(能看懂的)乱码:按照A规则存储,同样按照A规则解析,那么会显示正确的文本符号;反之,按照A规则存储&#xff0c…...

    2023/6/9 9:15:05
  9. Java:转换流(InputStreamReader、OutputStreamWriter)

    转换流:字节流和字符流之间的转换 1: InputStreamReader:将InputStream转换为Reader(字节流转成字符流) 字节流中的数据都是字符时,转成字符流操作更高效。实现将字节的输入流按指定字符集转换为字符的输入流。需要和…...

    2023/5/23 11:36:31
  10. 34、IO流——字符流InputStreamReader、OutputStreamWriter类

    InputStreamReader 构造方法 InputStreamReader(InputStream in) 创建一个使用默认字符集的 InputStreamReader InputStreamReader(InputStream in, Charset cs) 创建使用给定字符集的 InputStreamReader 成员方法 略 使用 //创建InputStreamReader对象 InputStreamReader…...

    2023/5/17 13:02:45
  11. java wirter_java之转换流,OutputStreamWriter的简单介绍

    各位小伙伴们大家好,在之前的文章中,小编介绍了java之转换流的原理。这次,小编要介绍的是转换流中的OutputStreamWriter,与及它的使用,具体如下:java.io.OutputStreamWriter extends WriterOutputStreamWri…...

    2023/5/22 2:49:43
  12. 桥接流InputStreamReader、OutputStreamWriter以及适配器模式

    详细介绍了Java IO中的桥接流InputStreamReader、OutputStreamWriter以及适配器模式。 文章目录1 InputStreamReader桥接输入流1.1 构造器1.2 API方法2 OutputStreamWriter桥接输出流2.1 构造器2.2 API方法3 字节流如何转为字符流4 适配器模式1 InputStreamReader桥接输入流 p…...

    2023/5/25 22:25:31
  13. java转换流OutputStreamWriter 、InputStreamReader

    输入流:字节转为字符 package com.msb.io01; import java.io.*;public class Test09 {public static void main(String[] args) throws IOException {File f new File("D:\\demo.txt");FileInputStream fis new FileInputStream(f);//读取字节InputStr…...

    2023/6/3 10:31:05
  14. java streamwriter_Java IO: InputStreamReader和OutputStreamWriter

    作者: Jakob Jenkov 译者: 李璟(jlee381344197gmail.com)本章节将简要介绍InputStreamReader和OutputStreamWriter。细心的读者可能会发现,在之前的文章中,IO中的类要么以Stream结尾,要么以Reader或者Writer结尾,那这两个同时以字…...

    2023/5/31 11:05:43
  15. java基础 ---- OutputStreamWriter,InputStreamReader

    转换流的理解概述: 字符流的工作过程: 输出字符流:把要写入文件的字符序列(实际上是Unicode码元序列)转为默认编码方式下的字节序列,然后再写入到文件中; 输入字符流:把要读取的字节…...

    2023/6/8 5:16:24
  16. 转换流InputStreamReader和OutputStreamWriter

    InputStreamReader、OutputStreamWriter实现从字节流到字符流之间的转换, 类的继承关系 InputStreamReader简介 InputStreamReader 是字符流Reader的子类,字节流->字符流 InputStreamReader(Inputstream in) //创建一个使用默认字符集的 Input…...

    2023/5/29 5:43:40
  17. 20 编码转换流 OutputStreamWriter InputStreamReader

    编码转换流 字节流:针对二进制文件 字符流:针对文本文件,读写容易出现乱码的现象,在读写时,最好指定编码集为UTF-8 1 概述 编码转换流(InputStreamReader/OutputStreamWriter)主要进行编码的转换,用来解决字符流读写乱码的问题 2 工具API学习 OutputStreamWriter : Output…...

    2023/5/23 20:02:17
  18. 综合使用InputStreamReader 和 OutputStreamWriter

    综合使用InputStreamReader 和 OutputStreamWriter /*综合使用InputStreamReader 和 OutputStreamWriter*/Testpublic void test2() throws Exception {// 造文件,造流File file1 new File("dbcp.txt");File file2 new File("dbcp_gbk.txt")…...

    2023/5/25 5:21:42
  19. Java中IO流基本介绍(5)——InputStreamReader和OutputStreamWriter

    1 基本概括 2 主要介绍 2.1 InputStreamReader/OutputStreamWriter 相比FileReader和FileWriter的优势 前者可以指定读取和写出的编码,不容易出现乱码。 2.2 转换流的作用 1. 如果目前所 获取到的是一个字节流需要转换字符流使用,这时候就可以使用转换…...

    2023/6/7 11:11:52
  20. BlockingQueue

    昨天研究了下quartz定时任务,在看xml的时候发现下面还配置了邮件的定时发送 再贴下目标类EmailQueueService的代码,这里看到了今天的主角BlockingQueue,就知道学习的机会又来了--容我明天再百度会再来续。。。这个讲的挺好的https://www.cnb…...

    2023/5/19 10:06:24

最新文章

  1. PHP 转换 excel中读取的时间

    首先,我们需要知道PHPExcel的时间和日期格式是以Excel内部的“1900年1月1日”为基础,以天为单位来计算的。即Excel日期与PHP时间戳之间存在一个时间偏移量。通过查阅PHPExcel的官方文档,我们可以得到以下的计算公式: // 读取exce…...

    2023/6/9 11:39:43
  2. TiDB 7.1 LTS 发版:为关键业务提供业务稳定性和多租户场景支持

    近日,企业级开源分布式数据库厂商 PingCAP 正式发布 TiDB 7.1 版本,这也是 2023 年度发布的首个 LTS(Long Term Support) 版本,汇集了来自 20 个真实场景带来的功能增强,累计优化和修复 140 功能&#xff0…...

    2023/6/9 11:39:22
  3. SPRING常用注解及其作用

    SPRING常用注解及其作用 1)声明bean的注解 Component是一种注解,用于标识一个类作为组件(Component)。组件是Spring中的一个通用术语,用于表示可被Spring容器管理和使用的对象。通过该注解,可以实现组件的…...

    2023/6/9 11:38:47
  4. 科普:python怎么使用Pyinstaller模块打包成可执行文件

    目录 1. 使用conda创建虚拟环境2. 列出所有虚拟环境查看是否创建成功3. 激活虚拟环境4. 安装Pyinstaller模块5. Pyinstaller模块常用参数6. 例子:Windows打包成单个文件并可使用命令行窗口并自定义文件logo 1. 使用conda创建虚拟环境 创建个虚拟环境来打包&#xf…...

    2023/6/9 11:38:33
  5. 1999-2020年31省省农村人口就业和文化程度相关数据

    1999-2020年31省省农村人口就业和文化程度相关数据 1、时间: 2、范围:包括全国31省 3、来源:整理自各省NJ、统计NJ、农村NJ 4、指标包括: 乡村人口和乡村就业人员:乡村人口(万人)、乡村人口&…...

    2023/6/9 11:38:19
  6. excel中的vlookup函数使用,查找对应信息

    简单做一个小表格,第一列序号、第二列姓名、第三列数值 显然我这里都乱序了,是为了更好的展示 vlookup函数是查找函数的一种,有四个参数: VLOOKUP(lookup_value,table_array,col_index_num,range_lookup) lookup_value&#xf…...

    2023/6/9 11:38:04
  7. 基于html+css的图展示116

    准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…...

    2023/6/9 11:37:50
  8. 异常检测学习笔记 二、基于角度和深度的极值分析技术

    一、异常检测的概率模型 为您的数据选择合适的模型,选择一个概率阈值,低于该阈值将数据标记为异常,计算观察数据中每个实例的概率,低于阈值的情况属于异常情况。 研究表明,世界杯比赛的进球数可以很好地近似于泊松分布。在一场比赛中进n球的概率由下式给出: ,其中λ是每…...

    2023/6/9 11:37:35
  9. 如何在RPC和RESTful之间做选择?

    不同软件系统之间的通信可以通过RPC(远程过程调用)或RESTful(表现层状态转移)协议来建立,这些协议允许多个系统在分布式计算中协同工作。 这两种协议在设计哲学上有所区别。RPC使得可以像调用本地过程一样调用服务器上…...

    2023/6/9 11:37:23
  10. 国产openeuler22.03容器环境下/etc/sysconfig/iptables保存的防火墙策略在服务器重启后不生效的问题分析和解决

    openeuler22.03容器环境下可以通过iptables进行访问限制以保障容器安全,但发现服务器重启后,在“Chain DOCKER"链中的配置不生效(其实centos/redhat环境也有相同问题)。本文对其原因进行分析并提供解决办法。 一、问题现象 …...

    2023/6/9 11:37:10
  11. 【C++/嵌入式笔试面试八股】二、11.操作系统概述 | 进程的组成、组织

    一、操作系统概述 01.大内核微内核区别 大内核 大内核指的是将所有操作系统服务都包含在内核中的设计方式,包括文件系统、网络协议栈、设备驱动程序等。在大内核中,所有服务共享同一个地址空间,因此服务之间的通信速度很快,但是代码很复杂,可靠性较低,一个服务的故障可…...

    2023/6/9 11:36:38
  12. Vue2 事件的默认和传播行为、事件修饰符

    前言 在学习vue2时,学到了 事件修饰符,但是对事件的默认行为和传播行为不太理解,所以也就是不知道为啥要使用事件修饰符,所以找了一些资料,在此记录一下。 Vue2官方文档 事件处理 — Vue.js (vuejs.org)https://v2.…...

    2023/6/9 11:36:25
  13. 01_MySQL索引简介

    影响性能下降、SQL慢体现在:执行时间长或者等待时间长 影响sql性能的常见情况: 数据过多:分库分表(根据微服务划分库、按照地域或时间分表存储、按照数据的特定字段对分库数量求余)关联了太多的表,太多join:允许表出现…...

    2023/6/9 11:35:22
  14. SecDevOps 相关知识了解学习 —— 筑梦之路

    SecDevOps指的是将安全实践整合到DevOps流程中。它强调了软件开发人员、IT安全团队和运营人员之间的合作、沟通和自动化的重要性,以确保安全性融入软件开发生命周期。 通过采用SecDevOps方法,组织可以在开发过程的早期阶段解决安全风险。这可以导致更快的…...

    2023/6/9 11:34:47
  15. 1.4C++运算符重载作函数

    C运算符重载函数作为类成员函数 作为类成员函数时,运算符重载函数使用类的成员变量作为操作数。 写个 demo: 运算符重载函数作为类成员函数时,需要注意:运算符重载函数必须是类的成员函数,不能是普通函数或者全局函…...

    2023/6/9 11:34:27
  16. Nacos集群Raft反序列化漏洞-修复

    近日,奇安信CERT监测到 Nacos 集群Raft反序列化漏洞(QVD-2023-13065),在Nacos集群处理部分Jraft请求时,攻击者可以无限制使用hessian进行反序列化利用,最终实现代码执行。鉴于该漏洞仅影响集群间通信端口 7848(默认配置下)&#x…...

    2023/6/9 11:34:00
  17. java html导出添加空行和空格

    情景: 要求导出签批单: 格式如下, 要获取“主办处室负责人”和“相关处室会签”环节的处理意见、处理人员和处理日期进行替换,导出word文档。 处理: 主要是如何拼接内容? 方法一: 导出word&…...

    2023/6/9 11:31:58
  18. springboot第25集:实体类定义规则

    PO:持久化对象,一个PO对象对应一张表里面的一条记录。全部对应 VO:View视图对象,用来在页面中展示数据的,页面需要哪些字段属性就添加哪些,查询出来之后赋值操作比PO对象要简单。所以提高性能。 DTO&#x…...

    2023/6/9 11:31:25
  19. 【ElementUI 表单校验】一个 el-form-item 下多个表单校验(循环校验)

    前端项目开发中,表单的应用是必不可少的,不管使用的原生、还是框架如:ElementUI、Ant Design Vue 等。基本的表单应用比较简单,按照文档中的描述使用即可。 官网地址 如下图: 使用 ElementUI 中的表单代码如下&…...

    2023/6/9 11:30:09
  20. Linux之进程间通信——管道

    文章目录 前言一、进程间通信1.概念2.目的3.进程间通信分类 二、管道1.管道介绍2.管道分类1.匿名管道pipi创建管道文件,打开读写端fork子进程关闭父进程的读取端,关闭子进程的写入端读写特征管道特征 2.命名管道mkfifo创建管道文件删除管道文件通信 三、…...

    2023/6/9 11:29:38