ASP UTF-8乱码问题的解决方法 这个是网页编码的问题。中文一般采用的是 gb2312这样的话显示中文基本上不会出现乱码。但是有时候我们用的是一种国际上通用的 utf-8格式。如果utf-8格式不是很了解的话是容易出现乱码的问题,下面我来讲述一下这 一问题的解决方法。 以下内容仅供参考,如有出入或者问题请留言或联系我,我尽量修改完整 --------------------------------------------有许多朋友问了我,也包括我自己以前在编写程序的时候出现了这个问题,为什 么在ASP里已经指定session.CodePage=65001了还会出现乱码的
问题,在这里我简单的解 释下这个问题的由来和解决方法,以免更多的朋友不喜欢UTF-8,我自己原先也非常的讨 厌UTF-8的,但是到后来发现UTF-8也蛮好的,而且代码字体或者更好看! 至于UTF-8是什么这种概念性的东西我就不多讲了,如果你们还不知道那么只要 打开baidu或者是google乃至任何一个
搜索引擎输入UTF-8就会出来一大堆关于UTF-8的相 关资料,自己慢慢的去品味它的含义!N年前的浏览器服务器这些老套的问题我也省略 了,这里主要讲讲当前技术所出现的问题!现在就中国这个市场来看浏览器虽然还是 IE6、IE7是老大,但是也出现了N多的浏览器,而每个浏览器都有不同的字库,所支持的 编码形式也不同,故经常出现乱码的问题,但是可以知道的是UTF-8编码是国际通用的编 码,如果你的网站想让全世界的浏览器都能够浏览,那UTF-8是必须的选择。对于制作网 页的工具也有很多,本人是喜欢用DW,当然用其他的工具也一样,主要是看自己喜欢。 好了,言归正传,现在让我为大家举一个ASP的例子,我是用DW工具来说,当然那些记事 本,FG,EP等等也都是一样的道理,代码再哪里都不会变的! 现在新建一张ASP页面,相信略懂ASP的朋友们都知道页面最开始,最上方肯定都会有一 句: <%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%> 这里面的东西应该都不需要再解释了吧!LANGUAGE,顾名思意,就是ASP所用的执行语言 是VBS,而CODEPAGE可以看成是一个参数,它有不同的参数值来表示不同的编码,比如: 936就表示国家标准的编码GB2312(简体中文),而950表示的是繁体中文,今天我这里讲 的主要是65001,UTF-8编码。 好了,把936改成65001吧,这样子就变成了: <%@LANGUAGE="
VBSCRIPT" CODEPAGE="65001"%> 然后随便输入一些字符,为了检测最好是中英文的都输入一些 <% Response.Write("This is my first UTF-8 编码的网页!") <% 然后保存用浏览器测试看,如果不出意外的话会出现乱码,具体的显示我这里就不列出来 了 好了,进入下一步:点击最上面的 "文件" 菜单,选择"另存为",最下面一行有个编码,默
认应该是ANSI的,点下拉框,选择UTF-8,再点保存,再用浏览器测试看看,如果不出意外,应 该乱得更厉害了,HOHO,晕倒了吧,当时我是强晕,别着急慢慢来,还有步骤呢!页面里 面应该会有这么一句话:
这里面的GB2312把它改成UTF-8的,然后测试页面的详细代码如下:
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<% Response.Write("This is my first UTF-8 编码的网页") %> 现在再试试看,如果不出意外的话应该没有问题了,能够正常显示了。 其实不需要这么麻烦的,在每张页面都需要用的页面里加相关代码,如本人的习惯是连接 数据库的那张页面(conn.asp)基本上每张都要调用的所以就在conn.asp这张页面的最上 方加上如下代码(UTF-8为例): <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <%session.CodePage=65001%> <%Response.Charset="utf-8"%> 然后所有页面都包含conn.asp这个文件就行了,这样子保证整个站点都不会出现乱码 了,,, 下面从
网络上收集了一些国内主流编码GB2312和UTF-8的区别,给大家共享: 使用UTF-8编码