2024年4月18日发(作者:)

网站建设中UTF-8与GB2312互转方法

为什么在ASP里指定了CodePage为65001还经常出现中文显示乱码?我在

这里将这个问题详细解释一下,以免很多朋友再走弯路,甚至排斥UTF-8。

如果你还不知道UTF-8是什么东东,那我建议你先去搜索一下UTF-8的相关

资料吧。

UTF-8编码之所以被越来越多的人接受甚至喜欢,肯定是有道理的。在

WEB2.0盛行的今天,在大谈多浏览器兼容的同时,不得不想到字符编码不同所

造成的乱码现象同样需要得到很好的处理„„

在N年以前,IE6以下的所有版本,只要没有安装相应的中文字库,访问相

关的页面都是会乱码的,例如:我是IE5 (Windows2000默认)的版本,在没有

安装IE繁体字库的情况下,访问任何繁体页面的网站都是会乱码的,当然前提

是该页面采用了BIG5的Charset。而UTF-8作为一种国际编码就能很好的处理

该问题,只要将页面存为UTF-8编码格式,再在页面上将CodePage及Charset

全部定义为UTF-8,就可以在任何客户端浏览器中显示出完全正确的内容,完全

不会乱码。

好了,这里以ASP页面为例,以一个实例来看具体操作吧:

打开新建一个ASP页面,相信玩ASP的朋友都会留意到,许多下载的源码里,

页面最上方一般都有一句:

<%@Language=\"VBScript\" CodePage=\"936\"%>

前面的language应该不用多说了,vbscript就是ASP默认的脚本语言,其

实完全可以不用写,写了好像还会影响页面执行效率,在这里我们先不讨论这个

问题。后面的CodePage就是关键了,目的就是告诉浏览器,此页面是何种编码,

936代表是简体中文,而950代表繁体中文,65001就是我们今天说的UTF-8编

码了。我们将936改成65001,整句如下:

<%@Language=\"VBScript\" CodePage=\"65001\"%>

再加上输出几个中文字看看能不能正确显示吧:

<% \"第一次测试UTF-8页面\"%>

OK,直接点击\"保存\",执行这个页面看看,如果不出意外,大家可能看到显

示出的是“一尾UTF-8页”这几个字,中文有乱码的现象,什么原因呢?

OK,请大家再点击最上面的“文件”菜单,选择“另存为”,最下面一行有

个编码,默认应该是\"ANSI\"的,请大家点下拉框,选择\"UTF-8\",再点“保存”,

再执行试试看,如果不出意外,乱得更厉害了,呵呵,晕了吧。别急,想想原因,

因为我们做的页面是HTML返回的,以前我们写HTML时,看到body前面,也就

是head里都有一句meta,应该是这样的:

也就是指定页面以gb2312编码返回结果,一定要写在有返回结果输出的前

面。大家都知道gb2312是简体中文吧,我们今天说的是UTF-8编码,我们就将

gb2312改成UTF-8吧,全部代码如下:

<%@Language=\"VBScript\" CodePage=\"65001\"%>

<% \"第一次测试UTF-8页面\"%>

最后一条:保存文件时请选编码为UTF-8 如图:

再执行看看,嗯,这次正常显示了吧„„

结论:采用UTF-8编码,除了要将文件另存为UTF-8格式之外,还需要同时

指定CodePage及Charset。

ASP + ACCESS + FSO + UTF-8,中文乱码解决方案笔记

有人说不要用FSO读写文件,换成,使用.Charset = \"utf-8\",

就不会出现乱码了。但是我照样出现乱码,看来这也不是最好的办法。

我的解决办法是,加上这句:ge=\"65001\"(使用一次就OK了,

后来(重启一遍)去掉也没出现乱码,怎么回事?)

总结:

1、所有文件采用utf-8保存;

2、ASP文件加上以下三行代码:

①、<%@LANGUAGE=\"VBSCRIPT\" CODEPAGE=\"65001\"%>,第一行

②、<%ge=\"65001\"%>,建议第二行

③、

/>,head区

第一步:修改 文件,将文件的前4行,也就是 \'定

义 Cookie,Application 域 前面的代码用以下代码替换:

<%@LANGUAGE=\"VBSCRIPT\" CODEPAGE=\"936\"%>

<%

Option Explicit

= True

TimeOut = 90

ge=936

参考的是:

如果制作的网页脚本与WEB服务端的默认代码页不同,则必须指明代码页:

codepage=936 简体中文GBK

codepage=950 繁体中文BIG5

codepage=437 美国/加拿大英语

codepage=932 日文

codepage=949 韩文

codepage=866 俄文

codepage=65001 unicode UFT-8

第二步:把所有的

改成

>

再另存为ANSI

GB2312转换为UTF-8编码的方法

第一步:

修改 文件,将文件的前4行,也就是 \'定

义 Cookie,Application 域 前面的代码用以下代码替换:

程序代码:

<%@LANGUAGE=\"VBSCRIPT\" CODEPAGE=\"65001\"%>

<%

Option Explicit

=True

ge=65001

TimeOut = 90

然后修改 和 还有 文件 找到:

程序代码:

>

修改为:

程序代码:

第二步:

将BLOG的所有ASP和JS文件,用记事本打开,然后另存为,编码本来是默认, 选

择成UTF-8就可以了


更多推荐

页面,乱码,文件,编码,代码,大家,执行,显示