常用于解决字符流读写时的中文乱码现象
乱码原因: 由于保存时使用的码表和打开时使用的码表不一致造成的。
**java.io.OutputStreamWriter **写出流转换
继承关系:
java.io.Writer
java.io.OutputStreamWriter**java.io.InputStreamReader **读取流转换
继承关系:
java.io.Reader
java.io.InputStreamReader| 方法 | 说明 | 
|---|---|
| OutputStreamWriter(OutputStream out,String charsetName) | charsetName是指定编码格式的字符串, 例如UTF-8, ISO-8859-1, GBK等 | 
try {
    String  path = "D:\\DEV\\eclipse\\workspace\\day14\\test.txt";
    // 1. 提供字节流
    OutputStream out = new FileOutputStream(path);
    // 2. 提供字符流 -- 字符流的参数也需要是字符流
    // 但是只有字节流, OutputStreamWriter可以把字节流转为字符流
    Writer out2 = new BufferedWriter(
        // 写出时指定编码
        new OutputStreamWriter(out,"ISO-8859-1")
    );
    out2.write("大家好, 我叫渣渣辉");
    // 3. 释放资源
    out2.close();
} catch (IOException e) {
    e.printStackTrace();
}
| 方法 | 说明 | 
|---|---|
| InputStreamWriter(InputStream out,String charsetName) | charsetName是指定编码格式的字符串, 例如UTF-8, ISO-8859-1, GBK等 | 
略, 和OutputStreamWriter的使用类似, 可以参考上面的实例
原文:https://www.cnblogs.com/zpKang/p/12917768.html