package cn.itcast.mldnio;
/**
* 将一个 GBK编码的txt文档另存为UTF-8编码文档
* InputStreamReader 读的时候一定要按照文章原来的编码,不然会乱码
* OutputStreamWriter 可以将文档重新编码后写出
* InputSteamReader与OutputStreamWriter相互配合,可以完成文档的转码操作
*
* 所谓装饰设计模式,就是通过层层构造的方式对个别对象的功能进行加强,比如可以将FileInputStream的对象包装成InputStreamReader。
* 简明期间,就不再trycatchfinally了。
*/
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class ConvertStream {
public static void main(String[] args) throws IOException {
InputStreamReader inputstreamreader = new InputStreamReader(new FileInputStream("G:/bookAndSite.txt"),"GBK");
OutputStreamWriter outputwriter = new OutputStreamWriter(new FileOutputStream("G:/temp.txt"),"UTF-8");
int i = 0;
while ((i = inputstreamreader.read()) != -1){
outputwriter.write(i);
outputwriter.flush();
}
inputstreamreader.close();
outputwriter.close();
}
}
J2SE学习笔记:IO转换流与包装模式
最新推荐文章于 2021-03-19 16:44:38 发布