编码方式概括

1.三种码表

1.iso8859-1码表:是一种8位的单字节编码方式。它可以表示256个字符,其中前128个字符与ASCII码相同,后面128个字符包含了一些欧洲语言中的特殊符号。iso8859-1码表在Servlet规范中被默认为字符流向浏览器发送页面信息时使用的编码方式。

2.GBK码表:是一种双字节编码方式,也称汉字内码扩展规范,是在GB2312的基础上增加了一些汉字和字符,共收录了两万多个汉字和字符。

3.unicode码表:是一种为世界上所有字符和符号分配唯一编号的标准,也称为统一码或万国码。unicode码表包含了多个区块,每个区块包含了一定范围的字符和符号。

2.编码方式

由unicode码表衍生出了三种编码方式:

1.utf-8编码方式:是一种变长的编码方式,可以用1-4个字节表示字符,根据字符的码点范围不同,采用不同的字符格式,utf-8的优点是可以兼容ASCII编码,也就是说ASCII编码中的所有字符在utf-8中都有不同的编码,utf-8是互联网最常用的编码方式之一

2.utf-16编码方式:是一种变长的编码方式,它可以用2或4个字节来表示一个字符,对于基本平面(Plane 0)中的字符,直接用两个字节存储其unicode码点;对于扩展平面(Plane 1到Plane 16)中的字符,使用4个字节存储,并且分成前后两个部分,每部分各占两个字节,并且固定前位。

3.utf-32编码方式:是一种定长的编码方式,它用4个字节来表示一个字符,并且直接存储其unicode码点,不需要任何转换,utf-32相比于其他两种编码方式,具有简单和统一的特点,但是也浪费很多空间

4.GB2312编码方式:是一种双字节编码方式,它用两个字节表示一个汉字或字符,GB2312共收录了6763个汉字和字符,其中一级汉字3755个,二级汉字3008个。GB2312的编码方式是基于区位码和国标码的转换而来的。区位码是指每个汉字或字符在GB2312中的分区编号和分区内位置编号,国标码是指将区位码加上32后得到的结果,内码是指将国标码的每个字节都加上128后得到的结果。GB2312的编码方式可以兼容ASCII编码,也就是说ASCII编码中的所有字符在GB2312中都有相同的编码。GB2312也被其他更广泛的编码方式所包含,比如GBK和GB18030

3.linux和windows下的编码

1.Linux和Windows下的编码方式并不是固定的,而是可以根据需要进行设置和转换的。一般来说,Linux下常用的编码方式是UTF-8,而Windows下常用的编码方式是GB2312

2.在linux下使用命令该变编码方式

iconv:这个命令可以将文件从一种编码转换为另一种编码,语法是iconv -f from-encoding -t to-encoding input-file -o output-file,其中from-encoding是原文件的编码,to-encoding是目标文件的编码,input-file是原文件名,output-file是目标文件名。例如,如果要将一个GB2312编码的文件转换为UTF-8编码的文件,可以使用命令:iconv -f GB2312 -t UTF-8 file1.txt -o file2.txt

iconv --list:命令可以列出iconv支持转换的编码

file  文件名:可以查看文件的编码方式

你可能感兴趣的:(笔记,servlet)