当前位置: 首页 > 图文教程 > 网络编程 > ASP > utf-8 网页不显示+utf-8网页乱码的通用解决方法

ASP
ASP下经常用的字符串等函数参考资料
asp下连接数据库 ASP链接数据库字符串大全总结
asp内置对象 ObjectContext 事务管理 详解
asp 内置对象 Application 详解
ASP中 SQL语句 使用方法
ASP 中 Split 函数的实例分析
ASP 中 DateDiff 函数详解 主要实现两日期加减操作
asp 存贮过程 (SQL版asp调用存储过程)
利用ASP实现在线生成电话图片效果脚本附演示
使用ASP记录在线用户的数量的代码
关于ASP生成伪参数技巧 简洁实用的伪(僞)参数
asp 关键词字符串分割如何实现方法
用ASP编写的加密和解密类
ASP之处理用Javascript动态添加的表单元素数据的代码
asp下最常用的19个基本技巧
一些Asp技巧和实用解决方法
asp实现一个统计当前在线用户的解决方案
asp下的一个很简单的验证码程序
asp又一个分页的代码例子
asp实现防止从外部提交数据的三种方法

ASP 中的 utf-8 网页不显示+utf-8网页乱码的通用解决方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 46 ::
收藏到网摘: n/a

当我们在浏览或使用uft-8格式的页面的时候,总有可能出现一些乱码或不显示的问题,下载就浏览器客户端和服务器都有一些原因的分析与解决方法 在windows操作系统上使用IE作为浏览器时。常常会发生这样的问题:在浏览使用UTF-8编码的网页时,浏览器无法自动侦测(即没有设定“自动选择”编码格式时)该页面所用的编码。
即使网页已经声明过编码格式:
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
由此造成某些含有中文UTF-8编码的页面产生空白输出。
如果使用的是Mozilla、Mozilla 浏览器、Sarafi的浏览器这不会造成这个问题。这是由于IE解析网页编码时以HTML内的标签优先,而后才是HTTP header内的讯息;而mozilla系列的浏览器则刚刚相反。
由于UTF-8为3个字节表示一个汉字,而普通的GB2312或BIG5是两个。页面输出时,由于上述原因,使浏览器解析、输出<title></title>的内容时,如果在</title>前有奇数个全角字符时,IE把UTF-8当作两个字节解析时出现半个汉字的情况,这时该半个汉字会和</title>的<结合成一个乱码字,导致IE无法读完<title>部分,使整个页面为空百输出。而这个时候如果察看源文件的话,会发现实际上整个叶面全部已经输出了。
因此最简单的解决办法是在网页文件的<head></head>标签中一定要把字符定义
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
放在<title></title>之前。
-------------------------------------
=====================
UTF-8网页乱码问题解决:
<%@codepage="65001"%>
< http-equiv="Content-Type" content="text/html; charset=UTF-8">
一个也不能少
另外,文件要存为utf-8格式的
还有,程序不能出错,嘿嘿
要是有错误的程序,那么刚打开的时候正常的,刷新了就乱码了
这里说的出错时不会使整个页面不显示的出错。
1,<%@codepage="65001"%>
2,< http-equiv="Content-Type" content="text/html; charset=UTF-8">
3,Session.CodePage = 65001
4,文件存成 UTF-8
我来说说吧,这个我比较有经验,呵呵

2,< http-equiv="Content-Type" content="text/html; charset=UTF-8">
=======================================
这条比较重要,也比较常见,这个决定了浏览者浏览器选择哪一种内码来访问你的网页。
4,文件存成 UTF-8
如果你用中文输入法,网页里面出现中文,这一条就比较重要了.因为我们用普通输入法输入的文字不是UTF格式的,所以要重新保存成 UTF-8格式。
所有从数据库里读的中文字都是乱码
=====================
1,<%@codepage="65001"%>
出现这种事情,请加上这句话,其实数据库跟内码没什么关系,关键是ASP程序用什么内码去传输你的数据,加上这句话,就强制ASP用UTF来传输数据。
尝试在<%@codepage="65001"%>下加一行:
<%Session.CodePage=65001%>
utf-8 网页不显示+utf-8网页乱码的问题一般就可以解决了