转换流:

1.概述
   将给定字节转成成指定码表的字符。
  

 

2.OutputStreamWriter

      字符流通向字节流的桥梁,可使用指定的 charset(字符集(容器))
    将要写入流中的字符编码成字节。
  
   示例:OutputStreamWriter:将字符流转成字节(下面四个转编码表实现同样的功能)
         

  
  

//默认编码表
FileWriter fw=new FileWriter("zhuanhuanliu.txt");
fw.write("你好");
fw.close();

//使用指定编码表。将字符转成字节(outputStreamWriter)
FileOutputStream fos=new FileOutputStream("demo2.txt");
OutputStreamWriter osw=new OutputStreamWriter(fos);
osw.write("你好");
//使用指定编码表GBK
FileOutputStream fos=new FileOutputStream("demo2.txt");
OutputStreamWriter osw=new OutputStreamWriter(fos,"GBK");
osw.write("你好");
osw.close();
//使用指定编码表UTF_8
FileOutputStream fos=new FileOutputStream("demo2.txt");
OutputStreamWriter osw=new OutputStreamWriter(fos,"UTF_8");
osw.write("你好");

3.InputStreamReader
  将字节转成字符数据
 
  当想要操作文本的时候,如果涉及编码,FileReader是不行的,要用
 

  示例:
 

FileInputStream fis=new FileInputStream("demo.txt");
InputStreamReader isr=new InputStreamReader(fis);
char[] buf=new char[1024];
int ch=isr.read(buf);
System.out.println(new String(buf,0,ch));


 

4.小记
  转换流:字节流+编码表(可以指定)
       |--用于操作File的子类:字节流+本地默认码表(固定)。