软件教程

ASP中输出 UTF-8 内容的方法

来源: 本站    类别: 软件教程    日期: 2014/11/1

 

ASP 做的系统默认是 GB2312 的,有时候用来输出 XML 会遇到一个问题:就是大多数情况下要求 XML 为 UTF-8 格式的。

如果我们直接指定 <?xml version="1.0" encoding="utf-8"?> 是不够的。

正确的应该是:

<%
dim originalCoagePage
originalCoagePage = Session.CodePage ' 记住原来的 CodePage(默认为 936)
Session.CodePage = 65001 ' 设置新的 CodePage(UTF-8)
Response.CharSet = "UTF-8"
Response.ContentType = "text/xml"
%>
<?xml version="1.0" encoding="utf-8"?>
...
<%
Session.CodePage = originalCoagePage ' CodePage 复原
%>

网上有的把 Session.CodePage 写成 Response.CodePage,这是不对的;

另外网上有些没有复原 Session.CodePage,绝大多数情况下会导致问题,因为绝大多数情况下,我们在其他网页中没有指定 CodePage,一旦访问了指定 CodePage 的页面后,那些没有指定 CodePage 的页面也是按照该 CodePage 来指定的。

与 <%@ CodePage=936 %> 相比,Session.CodePage 与只会影响当前会话。

注意,一定要保证 Session.CodePage = originalCoagePage 这一句能够执行到,不要中途代码错误导致程序终止而没有执行到。


相关文章


Copyright © 2004 - 2024 CNHWW Inc. All Rights Reserved
石家庄市征红网络科技有限公司版权所有 邮政编码:050051
服务电话:0311-85315152 13931185013 在线客服QQ:81447932 / 81447933 邮箱: cnhww@163.com