转换流InputStreamReader OutputStreamWriter
【1】转换流:作用:将字节流和字符流进行转换
【2】转换流 属于字节流还是字符流?输入字符流
InputStreamReader:字节输入流----》字符的输入流
OutputStreamWriter:字符的输出流----》字节的输出流
【3】图解
【4】将输入的字节流转换为输入的字符流,然后完成文件----》程序
package com.msb.io02; import java.io.*; /** * @author : liu * 日期:10:22:24 * 描述:IntelliJ IDEA * 版本:1.0 */ public class Test08 { //这是一个main方法:是程序的入口 public static void main(String[] args) throws IOException { //文件---》程序 //1.有个一源文件 File f=new File("d:\\test.txt"); //2.需要一个输入的字节流接触文件 FileInputStream fi = new FileInputStream(f); //3.加入一个转换流将字节流转换为字符流:(转换流属于一个处理流) //将字节转换为字符的时候,需要指定一个编码,这个编码跟文件本身的编码格式统一 //如果编码格式不统一的话那么在控制台上展示的效果就会出现乱码 InputStreamReader isr=new InputStreamReader(fi,"utf-8"); //4.开始动作将文件中内容显示到控制台 char[] c=new char[20]; int read = isr.read(c); while (read!=-1){ //将缓冲数组换位字符串,在控制台上面打印出来 System.out.print(new String(c,0,read)); read = isr.read(c); } //关闭流 isr.close(); } }
package com.msb.io02; import java.io.*; /** * @author : liu * 日期:10:22:24 * 描述:IntelliJ IDEA * 版本:1.0 */ public class Test08 { //这是一个main方法:是程序的入口 public static void main(String[] args) throws IOException { //文件---》程序 //1.有个一源文件 File f=new File("d:\\test.txt"); File f1=new File("d:\\Demo.txt"); //2.需要一个输入的字节流接触文件 FileInputStream fi = new FileInputStream(f); FileOutputStream fo=new FileOutputStream(f1); //3.加入一个转换流将字节流转换为字符流:(转换流属于一个处理流) //将字节转换为字符的时候,需要指定一个编码,这个编码跟文件本身的编码格式统一 //如果编码格式不统一的话那么在控制台上展示的效果就会出现乱码 InputStreamReader isr=new InputStreamReader(fi,"utf-8"); OutputStreamWriter osw = new OutputStreamWriter(fo,"utf-8"); //4.开始动作将文件中内容显示到控制台 char[] c=new char[20]; int read = isr.read(c); while (read!=-1){ //将缓冲数组换位字符串,在控制台上面打印出来 osw.write(c,0,read); read = isr.read(c); } //关闭流 osw.close(); isr.close(); } }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步