Java编码转换流

1.介绍

用来作为桥梁,把字节流转成字符流的桥梁。
用来解决字符流读写乱码问题。

2.工具类

OutputStreamWriter:是字节流通向字符流的桥梁
--OutputStreamWriter(OutputStream out, String charsetName)
--OutputStreamWriter(OutputStream out)     

InputStreamReader:是字节流通向字符流的桥梁
--InputStreamReader(InputStream in)
--InputStreamReader(InputStream in, String charsetName)

3.常见字符编码表

4.测试

package cn.tedu.encoding;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
//这个类用来测试编码转换流
//测试写出的编码转换流:OutputStreamWriter用来把字节流转成字符流
//总结:
//编码转换流OutputStreamWriter InputStreamReader:
//最大的目的是害怕  中文汉字 从字节流变成字符流时,出现乱码
//可以通过转换流设置编码集,来防止中文乱码。
public class Test2_Encode {
    public static void main(String[] args) {
       try {
           //1、创建OutputStreamWriter对象--是使用了平台的默认编码gbk编码,保存和打开的方式都是一张表gbk不会乱码
//         OutputStreamWriter out = new OutputStreamWriter(
                  //1.txt文件不是磁盘的路径,而是直接写出在工程下面和src同级(需要f5刷新出来)
//                                 new FileOutputStream("1.txt"));
           OutputStreamWriter out = new OutputStreamWriter(
                  //第二个参数"gbk",用来解决乱码,如果参数和保存时用的是一张表就不会乱码,否则就乱码
                  //比如默认保存时用的编码时gbk,参数也是gbk就不乱码。如果参数是utf-8、iso-8859-1就会乱码
                            new FileOutputStream("1.txt"),"gbk");
           //2、写出数据
           out.write("蔡徐坤");
           //3、释放资源
           out.close();
       } catch (IOException e) {
           e.printStackTrace();
       }
    }
}
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容