gb2312

UTF-8 GBK UTF8 GB2312 之间的区别和关系

社会主义新天地 提交于 2019-12-09 11:00:43
UTF-8:Unicode TransformationFormat-8bit,允许含BOM,但通常不含BOM。是用以解决国际上字符的一种多字节编码,它对英文使用8位(即一个字节),中文使用24为(三个字节)来编码。UTF-8包含全世界所有国家需要用到的字符,是国际编码,通用性强。UTF-8编码的文字可以在各国支持UTF8字符集的浏览器上显示。如,如果是UTF8编码,则在外国人的英文IE上也能显示中文,他们无需下载IE的中文语言支持包。   GBK是国家标准GB2312基础上扩容后兼容GB2312的标准。GBK的文字编码是用双字节来表示的,即不论中、英文字符均使用双字节来表示,为了区分中文,将其最高位都设定成1。GBK包含全部中文字符,是国家编码,通用性比UTF8差,不过UTF8占用的数据库比GBD大。   GBK、GB2312等与UTF8之间都必须通过Unicode编码才能相互转换:   GBK、GB2312--Unicode--UTF8   UTF8--Unicode--GBK、GB2312   对于一个网站、论坛来说,如果英文字符较多,则建议使用UTF-8节省空间。不过现在很多论坛的插件一般只支持GBK。   个编码的区别详细解释   简单来说,unicode,gbk和大五码就是编码的值,而utf-8,uft-16之类就是这个值的表现形式.而前面那三种编码是一兼容的

html编码常见的有utf-8和gb2312编码等,应该如何判断选择?

独自空忆成欢 提交于 2019-12-07 21:43:25
html如何选择编码,常见utf-8和gb2312编码如何判断选择 一、首先了解目前国内中文网页常用编码是 utf-8 还是gb2313。 比如: * 百度搜索 网页使用utf-8 * 腾讯新闻 网页使用utf-8 * 淘宝 使用utf-8 * 亚马逊 使用utf-8 * W3Cschool.cn 也使用utf-8 * 支付宝 使用utf-8 * 360搜索 使用utf-8 * 小米官网 使用utf-8] * 魅族官网 使用utf-8 可见截止2017年05月02日这些名站,均使用utf-8编码。 W3Cschool编码 < head > < meta charset = "utf-8" /> < title > w3cschool - 学技术查资料,从w3cschool开始! </ title > < meta http-equiv = "X-UA-Compatible" content = "IE=edge,chrome=1" /> < meta name = "renderer" content = "webkit" /> < meta name = "viewport" content = "width=device-width, initial-scale=1" /> < meta name = "keywords" content = "w3cschool

Windows 编码方式ASCII,GB2312,GBK

时间秒杀一切 提交于 2019-12-07 17:13:05
参考资料: 字符编码和中文乱码小叙 windows XP的默认字符集为? 当前windows xp 的默认字符集为gbk 。 1、ASCII编码 ASCII是基于拉丁字母的一套电脑编码系统。它主要用于显示现代英语和其他西欧语言。它是现今最通用的 单 字节 编码 系统 ,并等同于国际标准ISO/IEC 646。 1)、使用ASCII编码的缘由 在计算机中, 所有的数据在存储和运算时都要使用二进制数表示 (因为计算机用高电平和低电平分别表示1和0),例如,像a、b、c、d这样的52个字母(包括大写)、以及0、1等数字还有一些常用的符号(例如*、#、@等)在计算机中存储时也要使用 二进制数 来表示,而具体用哪些二进制数字表示哪个符号,当然每个人都可以约定自己的一套(这就叫 编码 ),而大家如果要想互相通信而不造成混乱,那么大家就必须使用相同的编码规则,于是美国有关的标准化组织就出台了 ASCII编码 ,统一规定了上述常用符号用哪些二进制数来表示。 2)、什么叫编码规则 约定计算机具体用哪些二进制数字表示哪个符号,这样的一套规则就称为编码。 3)、为什么会乱码 大家在互相通信时使用的编码规则不一样,就会导致乱码。为了不造成混乱,美国有关标准组织出台了ASCII编码,统一规定了常用符号用哪些二进制数表示。 4)、ASCII编码应用情景 最初学习计算机,首先接触的是ASCII编码。0是48

linux 文件编码格式转换

自古美人都是妖i 提交于 2019-12-07 14:46:05
如果你需要在 Linux 中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题。Windows中默认的文件格式是GBK(gb2312),而Linux一般都是UTF-8。下面介绍一下,在Linux中如何查看文件的编码及如何进行对文件进行编码转换。 查看文件编码 在Linux中查看文件编码可以通过以下几种方式: 1.在 Vim 中可以直接查看文件编码 :set fileencoding 即可显示文件编码格式。 如果你只是想查看其它编码格式的文件或者想解决用Vim查看文件乱码的问题,那么你可以在 ~/.vimrc 文件中添加以下内容: set encoding=utf-8 fileencodings=ucs-bom,utf-8,cp936 这样,就可以让vim自动识别文件编码(可以自动识别UTF-8或者GBK编码的文件),其实就是依照fileencodings提供的编码列表尝试,如果没有找到合适的编码,就用latin-1(ASCII)编码打开。 文件编码转换 1.在Vim中直接进行转换文件编码,比如将一个文件转换成utf-8格式 :set fileencoding=utf-8 2. iconv 转换,iconv的命令格式如下: iconv -f encoding -t encoding inputfile 比如将一个UTF-8 编码的文件转换成GBK编码 iconv -f

Locale: 字符集(character set).

◇◆丶佛笑我妖孽 提交于 2019-12-07 02:56:16
char 可被应用于所有8bit以及8bit以下的字符集,例如: US-ASCII,ISO-Latin-1和ISO-Latin-9以及UTF-8. char16_t 可被用于UCS-2,也可被用于UTF-16的code unit(代码单元). char32_t 可被用于UCS-4/UTF-32. wchar_t 它通常等价于char16_t或者char32_t. US-ASCII 7-bit字符集,于1963年完成标准化,用于电传打字机和其他设备,最开始的16个字符是不可打印的。 ISO-Latin-1或ISO-8859-1 这是一个8bit的字符集,于1987年完成标准提供西欧语言的所有字符, 这个字符集也是下面所有字符集的基础. UCS-2 这是一个 16bit的定长字符集(2byte) ,提供Universal Character Set(全球字符集)和Unicode(统一码)中最重要的65536个字符. UTF-8 这是个 multi-byte字符集 ,使用1-4个8bit值,用来表现Universal Character Set(全球字符集)和Unicode(统一码)的所有字符.主要被广泛的应用于万维网(world wide web). UTF-16 这也是一个 multi-byte字符集 ,使用1-2 code unit(每个16bit),用来表现Universal

解决Python字符串encode与decode乱码问题

大城市里の小女人 提交于 2019-12-06 14:05:08
为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题。 字符串在Python内部的表示是 unicode 编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。 encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。 因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码 代码中字符串的默认编码与代码文件本身的编码一致 。 如:s='中文' 如果是在utf8的文件中,该字符串就是utf8编码,如果是在gb2312的文件中,则其编码为gb2312。这种情况下,要进行编码转换

解决Python字符串encode与decode乱码问题

不打扰是莪最后的温柔 提交于 2019-12-06 14:04:50
为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题。 字符串在Python内部的表示是 unicode 编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。 encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。 因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码 代码中字符串的默认编码与代码文件本身的编码一致 。 如:s='中文' 如果是在utf8的文件中,该字符串就是utf8编码,如果是在gb2312的文件中,则其编码为gb2312。这种情况下,要进行编码转换

debian5/6下部署LAMP

ε祈祈猫儿з 提交于 2019-12-05 22:01:10
1、安装Lamp软件 apt-get install mysql-server-5.0 apt-get install apache2 apt-get install php5 apt-get install php5-gd apt-get install php5-mysql 软件的依赖关系会自动配置好。 *安装顺序为mysql、apache、php,这样不容易出错。 2、修改配置文件 vim /etc/apache2/apache2.conf 找到AddDefaultCharset,把iso9660改成gb2312,把前面的#去掉 vim /etc/php5/apache2/php.ini 找到default_charset,把后面内容改为gb2312。 来源: oschina 链接: https://my.oschina.net/u/1420/blog/13011

encode和decode的妙用

拥有回忆 提交于 2019-12-05 20:03:20
为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题。 字符串在Python内部的表示是 unicode 编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。 encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。 因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码 代码中字符串的默认编码与代码文件本身的编码一致 。 如:s='中文' 如果是在utf8的文件中,该字符串就是utf8编码,如果是在gb2312的文件中,则其编码为gb2312。这种情况下,要进行编码转换

Python字符串的encode与decode研究心得乱码问题解决方法

只谈情不闲聊 提交于 2019-12-05 19:47:49
Python字符串的encode与decode研究心得乱码问题解决方法 发布:dxy 字体:[增加 减小] 类型:转载 为什么Python使用过程中会出现各式各样的乱码问题,明明是中文字符却显示成“\xe4\xb8\xad\xe6\x96\x87”的形式? 为什么会报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)”?本文就来研究一下这个问题。 字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。 decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换成unicode编码。 encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode('gb2312'),表示将unicode编码的字符串str2转换成gb2312编码。 因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码