为什么utf-8中文乱码_utf8中文乱码
网页中只要使用UTF-8编码就不会出现中文乱码 是对的还是错的?
一般建议统一使用首先gbk和gb2312UTF-8应该是错的,刚刚做到这道习题给的是错,然后我就查找了很多资料加上自己在eclipse里尝试了一下,谈一下个人的理解以便今后有同学也遇到这个问题:
为什么utf-8中文乱码_utf8中文乱码
为什么utf-8中文乱码_utf8中文乱码
html乱码造成原因
<%@ page language="ja" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
UTF-8的文件解码为iso8859-1之后为什么会出现乱码? 求高手解答!!
----------------------------------------------------------------------2、文件的编码格式。--------
iso-8859-1是JAVA网络传输使用的标1、比如网页源代码是gbk的编码,而内容中的中文字是utf-8编码的,这样浏览器打开即会出现html乱码。反之网页是编码utf-8,内容是gbk也会出现乱码。准 字符集,而gb2312是标准中文字符集,当你作出提交表单等需要网络传输的作的时候,就需要把 iso-8859-1转换为gb2312字符集显示,否则如果按浏览器的gb2312格式来解释iso-8859-1字符集的话,由于2者不兼容,所以会 是乱码.
------------------------------------------------------------------------------
汉字是双字节的。所谓双字节是指一个双字要占用两个 BYTE的位置(即16位),分别称为高位和低位。规定的汉字编码为GB2312,这是强制性的, 目前几乎所有的能处理中文的应用程序都支持GB2312。GB2312包括了一二级汉字和9区符号,高位从0xa1到0xfe,低位也是从0xa1到 0xfe,其中,汉字的编码范围为0xb0a1到0xf7fe。 另外有一种编码,叫做GBK,但这是一份规范,不是强制的。GBK提供了20902个汉字,它兼容GB2312,编码范围为0x8140到0xfefe。GBK中的所有字符都可以一一映射到Unicode 2.0。 在不久的将来,会颁布另一种标准:GB18030-2000(G例如在eclipse中新建一个jsp文件,即便设置了utf-8编码格式也还是出现了乱码(编码格式这玩意儿有时候挺奇怪的,有时候它乱有时它不乱,所以不要刻意纠结这个问题来和我对质说你的没有出现乱码),然后我在jsp文件前面加了这段page指令中文就可以正常显示了:BK2K)。它收录了藏、蒙等少数民族的字型,从根本上解决了字位不足的问题。注意: 它不再是定长的。其二字节部份与GBK兼容,四字节部分是扩充的字符、字形。它的首字节和第三字节从0x81到0xfe,二字节和第四字节从0x30到 0x39
为什么在浏览器上按 查看-编码-uincode(UTF-8) 中文网站就会出现乱码啊?
ISO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符。 而gb2312是标准中文字符集。 但是 ISO 10646 码有下列问题: UTF-16 或 Unicode 是 16-bit 固定长度的编码,并没有比 Big5 或 GB2312 码提供更大的容纳空间。而 8-bit 不定长 (variable-length) 的编码,每个中文字使用 3 个位元组 (byte)。 这意味着使用 UTF-8 编码的 XML 文件会比使用 Big5 码的文件大上 50%。但是如使用 ASCII 码的标示 (Markup),文件就不会大这么多了。 标示大约会占文件的 50%。可能要使文件大小减少的方式就是采用 文件压缩了。 ISO 10646 码中,字的顺序与任何的中文码并不同。无法使用一个 简单的演算法 (algorithm) 就可以将 Big5 或 GB2312 码转换为 ISO 10646。您得用一个转换表来进行转码。但另一方面,ISO 10646 码的中文字序有利于排序 (sorting)。而且也去除了重复字,因而 对于检索 (searching) 也有帮助。(据说 GBK 字集包含 ISO 10646 码中所有的字,而且保留与 GB2312 码相同的字序。在某些情形下 可能是个好字集。)UTF-8 是 UNICODE 的一种变长字符编码,即 RFC 3629。简单的说——大字符集。可以解决多种语言文本显示问题,从而实现应用化和本地化。对系统来讲,UTF-8 编码可以通过屏蔽位和移位作快速读写,排序更加容易。UTF-8 是字节顺序无关的,它的字节顺序在所有系统中都是一样的。 UTF-8是UTF-8编码是一种目前广泛应用于网页的编码,它其实是一种Unicode编码,即致力于把全球所有语言纳入一个统一的编码。前UTF-8已经把几种重要的语言纳入,包括简繁中文和日韩文字。因此 UTF-8 具有更高的性能。 不过如果是纯英文的话,用什么都可以,用GB2312也没问题。GB2312是简体中文编码,当文章/网页中包含繁体中文、日文、韩文时,这些内容可能无法被正确编码。对于GB2312 汉字是双字节的。所谓双字节是指一个双字要占用两个BYTE的位置(即16位),分别称为高位和低位。 规定的汉字编码为GB2312,这是强制性的,目前几乎所有的能处理中文的应用程序都支持GB2312。GB2312包括了一二级汉字和9区符号,高位从0xa1到0xfe,低位也是从0xa1到0xfe,其中,汉字的编码范围为0xb0a1到0xf7fe。 总结: Unicode 制定组织 (Unicode Consortium) 是许多的公司联合决定制定一个包含全世界所有文字 的巨大字集,其中也有的公司参与。例如:Fujitsu and Fuji Xerox 公司。 该组织取用 ISO 10646 字集然后加入其他的资讯:标准名称及 特性。 Unicode 包含 GB2312 中所有的字及(可能) Big5 码中所有的字。 而且加入了许多其他语言的文字。(ISO 10646 有几种编码方式: UTF-8 是 8-bit 的,而 UTF-16 是 16-bit。 Unicode 是 UTF-16 的形式。给你说下这几个编码的区别吧。
所以我的理解是不仅仅要设置编码格式,可能还需要加一些代码才能使中文不乱码。这就是汉子的国标码,专门用来表示汉字,是双字节编码,而英文字母和iso8859-1一致(兼容iso8859-1编码)。其中gbk编码能够用来同时表示繁体字和简体字,而gb2312只能表示简体字,gbk是兼容gb2312编码的。
unicode
这是统一的编码,可以用来表示乱码了对吧?尝试修改网页显示的字符编码,将修改为和Notepad++一致的GB2312所有语言的字符,而且是定长双字节(也有四字节的)编码,包括英文字母在内。所以可以说它是不兼容iso8859-1编码的,也不兼容任何编码。不过,相对于iso8859-1编码来说,uniocode编码只是在前面增加了一个0字节,比如字母'a'为"00 61"。
需要说明的是,定长编码便于计算机处理(注意GB2312/GBK不是定长编码),而unicode又可以用来表示所有字符,所以在很多软件内部是使用unicode编码来处理的,比如ja。
UTF
考虑到unicode编码不兼容iso8859-1编码,而且容易占用更多的空间:因为对于英文字母,unicode也需要两个字节来表示。所以unicode不便于传输和存储。因此而产生了utf编码,utf编码兼容iso8859-1编码,同时也可以用来表示所有语言的字符,不过,utf编码是不定长编码,每一个字符的长度从1-6个字节不等。另外,utf编码自带简单的校验功能。一般来讲,英文字母都是用一个字节表示,而汉字使用三个字节。
注意,虽然说utf是为了使用更少的空间而使用的,但那只是相对于unicode编码来说,如果已经知道是汉字,则使用GB2312/GBK无疑是节省的。不过另一方面,值得说明的是,虽然utf编码对汉字使用3个字节,但即使对于汉字网页,utf编码也会比unicode编码节省,因为网页中包含了很多的英文字符。
js都设置utf-8为什么alert中文还是乱码
这如果理解得不对还请指正!个跟以下几个地方有关:
1、html中的meta。
3、如果在php文件中输出的type = sys.getfileencoding()js,可能需要
header("Content-type: text/html; charset=utf-8");
Eclipse导入项目后,修改了编码为UTF-8后,JAVA文件中的乱码编程正常的中文了。可是第二次打开Eclipse时,
是设置网页文件展示时使用的字符集(编码),那其实除了网页文件展示时有编码以外,网页文件本身还有编码。必须两者统一时才不会乱码。第二次打开Eclipse时,除了导入的项目外,其他原本的项目的JAVA文件中正常中文全部变成乱码了,是设置错误造成的,解决方法如下:
2、点击【Properties】,在弹出窗口选择Resource选项,然后在右侧作窗口中的项选择other选项。1、首先在软件中,右键出现中文乱码的ja项目名,在右键菜单中选择4、也可以在功能菜单选择》project》然后选择一个选项Properties。一项Properties。
3、在选项右边下拉选择中点选合适的编码格式,如果知道导入项目的使用了什么编码,可以尝试选择utf-8,然后确定Apple and close就可以了。
为什么所有中文字符都是乱码
2、html网页编码是gbk,而程序从数据库中调出呈现是utf-8编码的内容也会造成编码乱码。乱码,指的是由于本地计算机在用文本编辑器打开源文件时,使用了不相应字符集而造成部分或所有字符无法被阅读的一系列字符。造成其结果的原因是多种多样的。常见问题GB码和BIG5码冲突 原因系统或软件缺乏对某字符编码支持
前面加一句就好啦:# -- coding: cp936 --汉字乱码现象有4种类型:
文本乱码:是Windows系统显示乱码,如:菜单、桌面、提示框等。这是由于注册表中有关字体部分的设置不当引起的;
文档乱码:是可执行文件本来显示中文的地方出现乱码。这种乱码形成的原因比较复杂,有第1类的乱码原因,也可能是软件中用到的中文动态链接库被英文动态链接库覆盖所造成的;
文件乱码:主要是指邮件乱码;
修正乱码,可以使用系统内码转换工具,如“南极星”等,将系统内码转换为对应内码,字符即可正确显示。
3、浏览器不能自动检测网页编码,造成网页乱码。
4、可能你修改了文本文件的编码格式
import sys8、字库错乱,应该是中毒了
html中声明字符集为utf-8,但是中文仍然乱码,请问是什么原因,怎么解决
5、设置完成后,中文乱码就解决了。是Linux下么?
我也遇到过这个问题,解决办法是在web.xml中加一段配置,如下:
记事本,另存为UTF8编码即网页乱码:是由于港澳的繁体中文大五码(BIG5)与大陆简体中文(GB2312)不通用而造成的。可
为什么编写html代码时加入会出现乱码?
乱码原因:举个例子(此处用Notepad++为例):
因为一般中文网站都用的GB2312的编码,用其他编码方式显示自然会乱码。创建一个html文件,用Notepad++打开,先把文档结构写好
py文件用记事本打开,另存为utf-8格式即可test.html代码如下:
改好之后再修改test.html文件,修改之后的代码如下:
再次查看网页效果
这回正确了。
所以你将网页的显示字符集改为UTF-8说明你的编辑器可能采用的时其他字符集,你需要检查一下。
注意:
浏览器也可以设置字符集,不统一也可能导致乱码
使用UTF-8你乱码你需要检查到底时哪一步出了错误,是编辑器还是浏览器。
如果说网页时生成的还需要将的编码一并考虑进去
nicat我用UTF-8格式运行SQL语句插入的数据为什么汉字会变成乱码
我说下我遇到的问题吧,不知道对你有没有帮助。我也是用的Nicat,开始数据显示正常;用cmd检索数据就不显示中文;再打开Nicat也不显示中文了首先要明白,。把mysql里my.ini中字符集改成GBK就好了,原来是UTF8。
python中文显示乱码,已经在开头有了coding: utf-8
解决方法:
因为你的文件声明为 utf-8,并且也应该是用 utf-8 的编码保存的源文件。但是 windows 的本地默认编码是 cp936,也就是 gbk 编码,所以在控制台直接打印 utf-8 的字符串当然是乱码了。myname="你好"
print myname.decode('UTF-8').encode(type)
print a.decode('gb因此 Unicode 比 Big5 及 GB2312 码好 - 因为 Unicode 包含较多的字。 ISO字符集 ASCII中的"A"代表美国,因此ASCII码专门用于书写英语,严格来说是美式英语也就不足为奇了。ASCII码中缺少£、ü、?和许多书写其他语言和地区所需的字符。 可通过指定128以后的更多字符扩展ASCII码。标准组织(ISO)定义了几个不同的字符集,它们是在ASCII码基础上增加了其他语言和 地区需要的字符。其中突出的是ISO8859-1,通常叫做Latin-1。Latin-1包括了书写所有西方欧洲语言不可缺少的附加字符,其中 0~127的字符与ASCII码相同。表7-2给出了128~255之间的字符,同样前32个字符是极少使用的非打印控制字符。k')
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系 836084111@qq.com 删除。