1、转换流–OutputStreamWriter简介 :
-
OutputStreamWriter extends Writer,
转换流也是继承自超类Writer,因此可以使用Writer中的共性方法:write(int c),write(char[] ch),…,flash(),close(),…
-
OutputStreamWriter常用的构造方法:
-
1)OutputStreamWriter(OutputStream out)
-
2)OutputStreamWriter(OutputStream out, String charset)
-
参数:
-
OutputStream:字节输出流,将编码之后的字节数据写入文件中;
-
charset:指定编码的名称,不区分大小写,不指定默认为UTF-8
-
2、实现步骤:
-
1、创建OutputStreamWriter对象,构造方法中可以传入参数字节输出流对象,即字节写入的文件,以及编码方式;
-
2、调用write方法,把字符转换成字节存储到缓冲区中;
-
3、调用flash方法,将缓冲区的字节数据刷新到文件中;
-
4、释放资源。
3、使用默认编码格式写数据 – UTF-8格式
OutputStreamWriter osw = new OutputStreamWriter(new FileOutputStream("MyBatis01\\outputStreamWriter.txt",true));
//写数据
osw.write("使用转换流写UTF-8格式的文件");
//将转换后的字节文件存储到缓冲区
osw.flush();
//释放资源
osw.close();
4、使用转换流写一个GBK格式的文件
OutputStreamWriter osw1 = new OutputStreamWriter(new FileOutputStream("MyBatis01\\GBKFile.txt"),"GBK");
//写数据
osw1.write("这是一个GBK格式的文件,使用UTF-8解码方式查看会显示乱码!!!");
//将转换后的字节文件存储到缓冲区
osw1.flush();
//释放资源
osw1.close();
}
字符转换流总结: