经典的asp chr()函数问题

时间:2016-02-13 11:54:51

标签: asp-classic chr

我试图在ASP中实现RC4注释,但我在chr()函数中发现了一个奇怪的行为。

但问题与RC4脚本无关,而是与我无法解决的问题有关。

更不用说我已完成的所有测试,我可以用一种非常简单的形式解决问题:

我只是写了

Qux

分为2页,比方说L2.asp和L3.asp

第L2.asp页显示<%=chr(146)%> 因此html '

页面L3.asp显示&rsquo;

显然两个页面都在同一台服务器上(Windows Server 2012 R2) 看来页面L3.asp无法识别扩展ASCII表。

我尝试在顶部添加�以及许多其他解决方案,但没有任何变化..

虽然脚本非常简单(但是使用rc4例程测试了更长的脚本),如果我在L3.asp中复制L2.asp的内容或反之,页面的行为保持不变,因此,L2.asp contiunes在L3显示<% Response.Charset="ISO-8859-1"%>时显示',更改页面名称不会改变行为。

确实知道什么可以造成这种奇怪的行为?

非常感谢任何提示

1 个答案:

答案 0 :(得分:4)

它与Chr功能无关。
�UTF8-BOM,对于UTF-8文件是可选的。
首先尝试在没有BOM的情况下以UTF-8保存ASP文件。您可以使用Notepad ++等高级编辑器。
按照步骤操作:Open "file.asp" > Encoding > Convert to UTF-8然后File > Save

Response.Charset只是将字符集的名称附加到Content-Type响应头,并且在服务器端不执行任何操作。
相反,您必须指定Response.CodePage = 1252