字符编码与字符集

Posted zgmzbhqa

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了字符编码与字符集相关的知识,希望对你有一定的参考价值。

1.字符编码
编码:字符(能看懂的)-->字节(看不懂的)
解码:字节(看不懂的)-->字符(能看懂的)
乱码:按照A规则存储,同样按照A规则解析,那么会显示正确的文本符号;
反之,按照A规则存储,再按B规则解析,会导致乱码现象。
字符编码(Character Encoding):就是一套自然语言的字符与二进制数之间的对应规则
编码表:生活中文字和计算机中二进制的对应规则

2.字符集就是编码表,是系统所有字符的集合,包括各个国家文字、标点符号、图形符号、数字

技术图片

 

 技术图片

 

 技术图片

 

 编码引发的乱码问题:

package iotest.bufferedIOtest;
/*FileReader在IDEA中默认的编码格式为UTF-8
* FileReader读取系统默认编码(GBK),会出现乱码
* */

import java.io.FileInputStream;
import java.io.FileReader;
import java.io.IOException;

public class ErrorCodeTest {
    public static void main(String[] args) throws IOException {
        FileReader fr = new FileReader("C:\\test\\系统默认GBK编码文本1.txt");
        int len =0;
        while ((len = fr.read()) != -1){
            System.out.print((char) len);
        }
        fr.close();
    }
}

运行结果为:

技术图片

 

源文件内容为:

技术图片

 

 出现了乱码现象

 

解决乱码的方法:

以上是关于字符编码与字符集的主要内容,如果未能解决你的问题,请参考以下文章

我的javascript片段返回“非法字符”

字符编码与JSP学习笔记

python编码与代码注释

mysql 字符编码的查看与修改

win32day02-字符与编码

字符集与字符编码