最近调整一个网站编码的时候,发现经常会出现乱码,于是查了资料,总结出以下几方面防止UTF-8页面中文出现乱码
1、页面必须为UTF-8编码 可以用工具转换一下,如果用的Dreamweaver的话,可以在页面属性->标题/编码选项中选择UTF-8另存 2、
1
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
3、asp页面前都加上如下代码
1 2 3 4 5
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%> <% Response.CodePage=65001 Response.Charset="UTF-8" Session.CodePage = 65001 %>
以前一直没注意这个Session.CodePage,这次加上这个 如果页面都首先调用了某个文件,比如conn.asp,可以把以上代码只加在conn.asp页面里就行了,必须要保证出现在页面最前面
JS从表单输入框或其它页面元素中取值,如果有中文会出现乱码问题的解决方法 比如取某个文本框的值,如果是中文的话,在UTF-8下就可能会乱码,只要将取来的值编码传递就可以了,比如
alert(escape(document.form1.username.value))
,用escape编码一下在传递就ok了
调用js文件,如果js文件中有中文的话出现乱码问题的解决方法 在调用的js前声明来源页面的编码
<script type="text/javascript" language="javascript" src="images/zoom.js" charset="gb2312"></script>
当然还可以用工具将js文件事先存成UTF-8格式,也就不会出现乱码了
这里顺便说一下asp写XML文件时应该怎样才能保证不出现乱码及XML页面编码正确 最重要的一点,FSO组件是不好写UTF-8格式的文件的,要用其它的文件操作组件,比如Adodb.Stream
1 2 3 4 5 6 7 8 9 10 11
set astr=Server.CreateObject("Adodb.Stream") astr.Type = 2 astr.mode = 3 astr.charset = "utf-8" astr.open astr.WriteText "<?xml version=""1.0"" encoding=""UTF-8""?>" '....... astr.SaveToFile Server.mappath("Sitemap.XML"), 2 astr.flush astr.close set astr=nothing
asp使用UTF-8编码中文乱码问题的解决
最近调整一个网站编码的时候,发现经常会出现乱码,于是查了资料,总结出以下几方面防止UTF-8页面中文出现乱码
1、页面必须为UTF-8编码
可以用工具转换一下,如果用的Dreamweaver的话,可以在页面属性->标题/编码选项中选择UTF-8另存
2、
3、asp页面前都加上如下代码
以前一直没注意这个Session.CodePage,这次加上这个
如果页面都首先调用了某个文件,比如conn.asp,可以把以上代码只加在conn.asp页面里就行了,必须要保证出现在页面最前面
JS从表单输入框或其它页面元素中取值,如果有中文会出现乱码问题的解决方法
比如取某个文本框的值,如果是中文的话,在UTF-8下就可能会乱码,只要将取来的值编码传递就可以了,比如
,用escape编码一下在传递就ok了
调用js文件,如果js文件中有中文的话出现乱码问题的解决方法
在调用的js前声明来源页面的编码
当然还可以用工具将js文件事先存成UTF-8格式,也就不会出现乱码了
这里顺便说一下asp写XML文件时应该怎样才能保证不出现乱码及XML页面编码正确
最重要的一点,FSO组件是不好写UTF-8格式的文件的,要用其它的文件操作组件,比如Adodb.Stream
原文地址:http://ai-2.cn/2009/06/asputf-8/
转载请注明出处,非常感谢!