加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

经典ASP和UTF-8

发布时间:2020-12-15 19:50:12 所属栏目:asp.Net 来源:网络整理
导读:我正在改变我的应用程序以使用utf-8页面. 所以每个ASP页面都有这个代码 Response.CodePage = 65001 Response.CharSet = "utf-8" 和HTML meta charset="UTF-8" /meta http-equiv="Content-Type" content="text/html;charset=UTF-8" / 我在Visual Studio 2013
我正在改变我的应用程序以使用utf-8页面.
所以每个ASP页面都有这个代码
Response.CodePage = 65001 
Response.CharSet = "utf-8"

和HTML

<meta charset="UTF-8" />
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />

我在Visual Studio 2013中保存了所有文件,编码为UTF-8(无签名)65001.

当我在HTML中编写特殊字符时,这样工作正常:

<p>Aten??o</p>

但是当我用VBScript(经典ASP)编写时,它不起作用,特殊字符很乱.我可以通过使用编码UTF-8(带签名)65001保存文档(.asp)来修复它们.

所以,我的问题是:

>我是否必须在每个页面上使用此编码(带签名)?
>我可以遇到什么样的问题?

解决方法

您需要为每个.asp文件设置@Codepage指令.我们正在使用一个通用的#include文件,该文件首先包含在每个页面中,并且预先包含以下行:
<%@Codepage = 65001 %>
<% Option explicit %>
<% Response.Codepage = 65001 %>

查看有关Codepage指令here(备注部分)的更多信息.链接的页面是关于Session.Codepage的,如果你想使用内置的Session,它也可能对你有意义.

使用BOM保存所有文件不是IIS的要求,我们保存所有文件而无需BOM正常工作.

根据我的经验,在使用ASP一年多之后的一个注意事项:我们有时会遇到源文件的BOM偷偷摸摸到生成的输出中的问题,这会导致AJAX / JSON响应出现问题.解决方法是在写输出之前使用Response.Clear.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读