常用编码:Shift_JIS, GBK,EUCKR,Big5,UTF8,CP1252

https://blog.csdn.net/hellofeiya/article/details/8441812

(1) Shift_JIS

Shift_JIS是一个日本电脑系统常用的编码表。它能容纳全角半角拉丁字母平假名片假名符号日语汉字。

它被命名为Shift_JIS的原因,是它在放置全角字符时,要避开原本在0xA1-0xDF放置的半角假名字符。

微软IBM的日语电脑系统中,即使用了这个编码表。这个编码表称为CP932

目录

 [隐藏

[编辑]字节结构

以下字符在Shift_JIS使用一个字节来表示。

ASCII字符 (0x20-0x7E),但“\”被“¥”取代
ASCII控制字符(0x00-0x1F、0x7F)
JIS X 0201标准内的半角标点及片假名(0xA1-0xDF)
在部分操作系统中,0xA0用来放置“不换行空格”。

以下字符在Shift_JIS使用两个字节来表示。

JIS X 0208字集的所有字符
“第一位字节”使用0x81-0x9F、0xE0-0xEF(共47个)
“第二位字节”使用0x40-0x7E、0x80-0xFC(共188个)
使用者定义区
“第一位字节”使用0xF0-0xFC(共13个)
“第二位字节”使用0x40-0x7E、0x80-0xFC(共188个)

在Shift_JIS编码表中,并未使用0xFD、0xFE及0xFF。

微软IBM的日语电脑系统中,在0xFA、0xFB及0xFC的两字节区域,加入了388个JIS X 0208没有收录的符号和汉字。

[编辑]Shift_JIS编码表

Shift_JIS
 x0x1x2x3x4x5x6x7x8x9xAxBxCxDxExF
0xNULSOHSTXETXEOTENQACKBELBSHTLFVTFFCRSOSI
1xDLEDC1DC2DC3DC4NAKSYNETBCANEMSUBESCFSGSRSUS
2xSP!"#$%&'()*+,-./
3x0123456789:;<=>?
4x@ABCDEFGHIJKLMNO
5xPQRSTUVWXYZ[¥]^_
6x`abcdefghijklmno
7xpqrstuvwxyz{|}DEL
8x                
9x                
Ax 
Bxソ
Cx
Dx
Ex                
Fx                

上图粉红色为JIS X 0207定义的控制字符;浅蓝色为JIS X 0201一字节符号的所在范围;紫色为JIS X 0208两字节汉字和全角符号的所在范围;黄色为JIS X 0201以“¥”替换了“\”以“‾”替换了“~”;绿色为未编码

[编辑]JIS转换方法

由JIS X 0208转换至Shift_JIS的方法:

33 \le j_1 \le 96 \Rightarrow s_1 = \frac{j_1 + 1}{2} + 112
97 \le j_1 \le 126 \Rightarrow s_1 = \frac{j_1 + 1}{2} + 176
j_1 是奇数\Rightarrow s_2 = j_2 + 31 + \operatorname{trunc}\left( \frac{j_2}{95} \right)
j_1 是偶数\Rightarrow s_2 = j_2 + 126

[编辑]参看

[编辑]外部链接

(2) GBK

    GBK是汉字编码标准之一,全称《汉字内码扩展规范》(GBK即“国标”、“扩展”汉语拼音的第一个字母,英文名称:Chinese Internal Code Specification).

     我们经常使用各种编码标准的汉字,编码到底是什么呢?所谓编码,是以固定的顺序排列字符,并以此做为记录、存贮、传递、交换的统一内部特征,这个字符排列顺序被称为“编码”。和中文字库有关的编码标准有:国标GB码、GBK码、港台BIG-5码等,不同编码的汉字字库都与汉字的应用有密切关系。

  很多人在使用过程中,发现字不够用,因为目前大家使用的主要是GB编码字库,此编码标准只收录了6763个常用汉字,而GB字库以外大量汉字,只能通过方正女娲补字软件拼字或其它造字程序补字。尽管补出的汉字在字形上满足需要,但在字体风格、大小、结构方面难以协调统一,而采用手工贴图的方式补字,更不雅观。进而言之,如果用户建立信息系统,或需要查询新闻、出版内容时,靠补字是无法实现的。方正开发的GBK字库,将极大地缓解缺字现象。

  从GB字库扩充到GBK字库,增加了1万4千多字。北大方正从1996年投入大量人力,开始做黑、宋、仿、楷GBK字库,并于1998年4月成为第一家通过国家权威部门组织的GBK字库鉴定的专业厂商。到现在为止,北大方正已将全部字体转换成GBK字库,共46款,其中18款字数达21003个,是拥有GBK字库款数最多的厂商。

  ISO 10646 是一个包括世界上各种语言的书面形式以及附加符号的编码体系。其中的汉字部分称为“CJK 统一汉字”(C 指中国,J 指日本,K 指朝鲜)。而其中的中国部分,包括了源自中国大陆的 GB 2312、GB 12345、《现代汉语通用字表》等法定标准的汉字和符号,以及源自台湾的 CNS 11643 标准中第 1、2 字面(基本等同于 BIG-5 编码)、第 14 字面的汉字和符号。

(3) EUCKR

    朝鲜语编码

(4) Big-5

    BIG-5码是通行于台湾香港地区的一个繁体编码方案,俗称“大五码”。地区标准号为:CNS11643,这就是人们讲的BIG-5码

    大五码(Big5),又称为五大码,是使用繁体中文社群中最常用的电脑汉字字符集标准,共收录13,060个中文字,其中有二字为重覆编码,Big5属中文内码(中文码分为中文内码及中文交换码两类)。Big5虽普及于中国的台湾香港澳门繁体中文通行区,但长期以来并非当地的国家标准,而只是业界标准(de facto standard)。倚天中文系统、Windows等主要系统的字符集都是以Big5为基准,但厂商又各自增删,衍生成多种不同版本。

(5) UTF8

    UTF-8是UNICODE的一种变长字符编码又称万国码,由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言.

    如果UNICODE字符由2个字节表示,则编码成UTF-8很可能需要3个字节。而如果UNICODE字符由4个字节表示,则编码成UTF-8可能需要6个字节。用4个或6个字节去编码一个UNICODE字符可能太多了,但很少会遇到那样的UNICODE字符。 UTF-8转换表表示如下:

  

UNICODEbit数UTF-8byte数备注
0000 0000 ~ 
0000 007F
0~70XXX XXXX1
0000 0080 ~ 
0000 07FF
8~11110X XXXX 
10XX XXXX
2
0000 0800 ~ 
0000 FFFF
12~161110 XXXX 
10XX XXXX 
10XX XXXX
3基本定义范围:0~FFFF
0001 0000 ~ 
001F FFFF
17~211111 0XXX 
10XX XXXX 
10XX XXXX 
10XX XXXX
4Unicode6.1定义范围:0~10 FFFF
0020 0000 ~ 
03FF FFFF
22~261111 10XX 
10XX XXXX 
10XX XXXX 
10XX XXXX 
10XX XXXX
5
0400 0000 ~ 
7FFF FFFF
27~311111 110
10XX XXXX 
10XX XXXX 
10XX XXXX 
10XX XXXX 
10XX XXXX
6
实际表示ASCII字符的UNICODE字符,将会编码成1个字节,并且UTF-8表示与ASCII字符表示是一样的。所有其他的UNICODE字符转化成UTF-8将需要至少2个字节。每个字节由一个换码序列开始。第一个字节由唯一的换码序列,由n位连续的1加一位0组成, 首字节连续的1的个数表示字符编码所需的字节数。

  示例

  UNICODE uCA(11001010) 编码成UTF-8将需要2个字节

  uCA -> C3 8A

  UNICODE uF03F (11110000 00111111) 编码成UTF-8将需要3个字节:

  u F03F -> EF 80 BF

  

Unicode 16进制Unicode 2进制bit数UTF-8 2进制UTF-8 16进制
CA1100 101081100 0011 1000 1010C3 8A
F0 3F1111 0000 0011 1111161110 1111 1000 0000 1011 1111EF 80 BF

(6) cp1252

Eclipse的default编码是cp1252.

以下是所有编码说明:

armscii8 (ARMSCII-8 Armenian)  
armscii8_bin  亚美尼亚语, 二进制  
armscii8_general_ci  亚美尼亚语, 不区分大小写  
ascii (US ASCII)  
ascii_bin  西欧 (多语言), 二进制  
ascii_general_ci  西欧 (多语言), 不区分大小写  
big5 (Big5 Traditional Chinese)  
big5_bin  繁体中文, 二进制  
big5_chinese_ci  繁体中文, 不区分大小写  
binary (Binary pseudo charset)  
binary  二进制  
cp1250 (Windows Central European)  
cp1250_bin  中欧 (多语言), 二进制  
cp1250_croatian_ci  克罗地亚语, 不区分大小写  
cp1250_czech_cs  捷克语, 区分大小写  
cp1250_general_ci  中欧 (多语言), 不区分大小写  
cp1251 (Windows Cyrillic)  
cp1251_bin  西里尔语 (多语言), 二进制  
cp1251_bulgarian_ci  保加利亚语, 不区分大小写  
cp1251_general_ci  西里尔语 (多语言), 不区分大小写  
cp1251_general_cs  西里尔语 (多语言), 区分大小写  
cp1251_ukrainian_ci  乌克兰语, 不区分大小写  
cp1256 (Windows Arabic)  
cp1256_bin  阿拉伯语, 二进制  
cp1256_general_ci  阿拉伯语, 不区分大小写  
cp1257 (Windows Baltic)  
cp1257_bin  巴拉克语 (多语言), 二进制  
cp1257_general_ci  巴拉克语 (多语言), 不区分大小写  
cp1257_lithuanian_ci  立陶宛语, 不区分大小写  
cp850 (DOS West European)  
cp850_bin  西欧 (多语言), 二进制  
cp850_general_ci  西欧 (多语言), 不区分大小写  
cp852 (DOS Central European)  
cp852_bin  中欧 (多语言), 二进制  
cp852_general_ci  中欧 (多语言), 不区分大小写  
cp866 (DOS Russian)  
cp866_bin  俄语, 二进制  
cp866_general_ci  俄语, 不区分大小写  
cp932 (SJIS for Windows Japanese)  
cp932_bin  日语, 二进制  
cp932_japanese_ci  日语, 不区分大小写  
dec8 (DEC West European)  
dec8_bin  西欧 (多语言), 二进制  
dec8_swedish_ci  瑞典语, 不区分大小写  
euckr (EUC-KR Korean)  
euckr_bin  朝鲜语, 二进制  
euckr_korean_ci  朝鲜语, 不区分大小写  
gb2312 (GB2312 Simplified Chinese)  
gb2312_bin  简体中文, 二进制  
gb2312_chinese_ci  简体中文, 不区分大小写  
gbk (GBK Simplified Chinese)  
gbk_bin  简体中文, 二进制  
gbk_chinese_ci  简体中文, 不区分大小写  
geostd8 (GEOSTD8 Georgian)  
geostd8_bin  乔治亚语, 二进制  
geostd8_general_ci  乔治亚语, 不区分大小写  
greek (ISO 8859-7 Greek)  
greek_bin  希腊语, 二进制  
greek_general_ci  希腊语, 不区分大小写  
hebrew (ISO 8859-8 Hebrew)  
hebrew_bin  希伯来语, 二进制  
hebrew_general_ci  希伯来语, 不区分大小写  
hp8 (HP West European)  
hp8_bin  西欧 (多语言), 二进制  
hp8_english_ci  英语, 不区分大小写  
keybcs2 (DOS Kamenicky Czech-Slovak)  
keybcs2_bin  捷克斯洛伐克语, 二进制  
keybcs2_general_ci  捷克斯洛伐克语, 不区分大小写  
koi8r (KOI8-R Relcom Russian)  
koi8r_bin  俄语, 二进制  
koi8r_general_ci  俄语, 不区分大小写  
koi8u (KOI8-U Ukrainian)  
koi8u_bin  乌克兰语, 二进制  
koi8u_general_ci  乌克兰语, 不区分大小写  
latin1 (cp1252 West European)  
latin1_bin  西欧 (多语言), 二进制  
latin1_danish_ci  丹麦语, 不区分大小写  
latin1_general_ci  西欧 (多语言), 不区分大小写  
latin1_general_cs  西欧 (多语言), 区分大小写  
latin1_german1_ci  德语 (字典), 不区分大小写  
latin1_german2_ci  德语 (电话本), 不区分大小写  
latin1_spanish_ci  西班牙语, 不区分大小写  
latin1_swedish_ci  瑞典语, 不区分大小写  
latin2 (ISO 8859-2 Central European)  
latin2_bin  中欧 (多语言), 二进制  
latin2_croatian_ci  克罗地亚语, 不区分大小写  
latin2_czech_cs  捷克语, 区分大小写  
latin2_general_ci  中欧 (多语言), 不区分大小写  
latin2_hungarian_ci  匈牙利语, 不区分大小写  
latin5 (ISO 8859-9 Turkish)  
latin5_bin  土耳其语, 二进制  
latin5_turkish_ci  土耳其语, 不区分大小写  
latin7 (ISO 8859-13 Baltic)  
latin7_bin  巴拉克语 (多语言), 二进制  
latin7_estonian_cs  爱沙尼亚语, 区分大小写  
latin7_general_ci  巴拉克语 (多语言), 不区分大小写  
latin7_general_cs  巴拉克语 (多语言), 区分大小写  
macce (Mac Central European)  
macce_bin  中欧 (多语言), 二进制  
macce_general_ci  中欧 (多语言), 不区分大小写  
macroman (Mac West European)  
macroman_bin  西欧 (多语言), 二进制  
macroman_general_ci  西欧 (多语言), 不区分大小写  
sjis (Shift-JIS Japanese)  
sjis_bin  日语, 二进制  
sjis_japanese_ci  日语, 不区分大小写  
swe7 (7bit Swedish)  
swe7_bin  瑞典语, 二进制  
swe7_swedish_ci  瑞典语, 不区分大小写  
tis620 (TIS620 Thai)  
tis620_bin  泰语, 二进制  
tis620_thai_ci  泰语, 不区分大小写  
ucs2 (UCS-2 Unicode)  
ucs2_bin  Unicode (多语言), 二进制  
ucs2_czech_ci  捷克语, 不区分大小写  
ucs2_danish_ci  丹麦语, 不区分大小写  
ucs2_estonian_ci  爱沙尼亚语, 不区分大小写  
ucs2_general_ci  Unicode (多语言), 不区分大小写  
ucs2_icelandic_ci  冰岛语, 不区分大小写  
ucs2_latvian_ci  拉脱维亚语, 不区分大小写  
ucs2_lithuanian_ci  立陶宛语, 不区分大小写  
ucs2_persian_ci  波斯语, 不区分大小写  
ucs2_polish_ci  波兰语, 不区分大小写  
ucs2_roman_ci  西欧, 不区分大小写  
ucs2_romanian_ci  罗马尼亚语, 不区分大小写  
ucs2_slovak_ci  斯洛伐克语, 不区分大小写  
ucs2_slovenian_ci  斯洛文尼亚语, 不区分大小写  
ucs2_spanish2_ci  传统西班牙语, 不区分大小写  
ucs2_spanish_ci  西班牙语, 不区分大小写  
ucs2_swedish_ci  瑞典语, 不区分大小写  
ucs2_turkish_ci  土耳其语, 不区分大小写  
ucs2_unicode_ci  Unicode (多语言), 不区分大小写  
ujis (EUC-JP Japanese)  
ujis_bin  日语, 二进制  
ujis_japanese_ci  日语, 不区分大小写  
utf8 (UTF-8 Unicode)  
utf8_bin  Unicode (多语言), 二进制  
utf8_czech_ci  捷克语, 不区分大小写  
utf8_danish_ci  丹麦语, 不区分大小写  
utf8_estonian_ci  爱沙尼亚语, 不区分大小写  
utf8_general_ci  Unicode (多语言), 不区分大小写  
utf8_icelandic_ci  冰岛语, 不区分大小写  
utf8_latvian_ci  拉脱维亚语, 不区分大小写  
utf8_lithuanian_ci  立陶宛语, 不区分大小写  
utf8_persian_ci  波斯语, 不区分大小写  
utf8_polish_ci  波兰语, 不区分大小写  
utf8_roman_ci  西欧, 不区分大小写  
utf8_romanian_ci  罗马尼亚语, 不区分大小写  
utf8_slovak_ci  斯洛伐克语, 不区分大小写  
utf8_slovenian_ci  斯洛文尼亚语, 不区分大小写  
utf8_spanish2_ci  传统西班牙语, 不区分大小写  
utf8_spanish_ci  西班牙语, 不区分大小写  
utf8_swedish_ci  瑞典语, 不区分大小写  
utf8_turkish_ci  土耳其语, 不区分大小写  
utf8_unicode_ci  Unicode (多语言), 不区分大小写  

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页