经典的asp FormatNumber显示一个特殊字符(Â)作为千位分隔符

时间:2011-11-18 12:05:07

标签: asp-classic

我在Classic ASP中遇到FormatNumber函数的问题。

使用此过载时     FormatNumber(cdbl(aRecs(3,i)),0,0,0),数字看起来很好,例如160 703

但是,使用此过载时     FormatNumber(aRecs(3,i),0,false,false,true),“0”),该数字以特殊字符显示为千位分隔符,例如160 703

N / B: aRecs(3,i)是指从记录集(从数据库)中检索的值。

在生产服务器(Windows Server 2008)上一切正常,但是,当我设置开发环境(Windows 7以及Windows Server 2008)时,那就是我遇到了这个问题。我已尝试在我的区域设置中设置一个分隔符无效

我错过了什么。此外,这是一个非常古老的项目,我无法修改所有对此函数的调用。

2 个答案:

答案 0 :(得分:3)

将此行代码添加到页面顶部: -

 Response.CharSet = "UTF-8"

这个问题通常是由于响应代码页(在我猜测为65001)和内容类型标题中的CharSet值不匹配的结果。通常不会传递CharSet值,因此浏览器会猜测,通常使用当前用户区域设置来确定代码页。

答案 1 :(得分:0)

使用页面顶部的这两行来纠正这种情况:

<%@ Language=VBScript codepage="65001"%>

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