上一篇 | 下一篇
网络编程

同一个网站UTF-8和GB2312的两个子站点乱码的解决方法

最近的工作涉及到编码的问题很头大~好不容易找到了方法解决了同一个ASP站点UTF-8GB2312的两个子站点乱码问题!
ASP程序在同一个站点中,如果出现UTF-8编码的程序,又有GB2312的程序,在浏览完UTF-8编码的页面后,再浏览GB2312的页面,GB2312编码的页面就会出现乱码.

出现这样的问题,可能是:当你浏览UTF-8编码的时候,服务器默认用UTF-8的引擎来输出html,当你用再浏览GB2312的页面时,它还是用UTF-8来输出本应是GB2312编码的页面.所以会乱码.

如果要将他们转为同一种编码可能会很痛苦.

还有一种解决方法是:不用作任何转换,保持原来的编码不变.在Utf-8程序的第一行加上:

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<%Session.CodePage=65001%>

 



GB2312程序的第一行加上

 

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>
<%Session.CodePage=936%>

 



这样就可以了.当然如果你的所有程序都在第一行include 一个文件的话,
把上面的代码放在被include 的文件第一行就马上解决问题了.
Session.CodePage 是指定服务器用哪种编辑来输出.
有了它的声明,服务器就不会用默认的编码引擎来输出了.




[本日志由 zhqiao 于 2023-06-01 03:22 PM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 网站编程网站编程 UTF-8UTF-8 GB2312GB2312 乱码乱码
相关日志:
评论: 0 | 引用: 0 | 查看次数:
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.