解决asp utf 8 access中文乱码一例
文件头用了
<%@Language="VBScript" CodePage="65001"%>
文件本身已经是Utf-8的编码了
提交过到Access库中怎么都是 “产品介绍 ”这样的编码
一步步分析,不存库直接输出,也是这样的编码。想来跟Access无关了。
相于迷惑,后来重新建一个表单元,提交,输出结果,编码正常
对比之下发现,原来的提交的表单数据都用了Server.HTMLEncode()这个函数处理过,去掉就不会被编码了。
找到原因,在文件头用<%@Language="VBScript" CodePage="65001"%>定义字符集的时候,Server.HTMLEncode()会将中文转成对应的10进制代码。
解决方法:不用Server.HTMLEncode(),自己定义一个:
'' 替换Server.HTMLEncode,避免对utf-8进行编码
'' &要换成半角的&
function HTMLEncode(Str)
Str = Replace(Str, """", "&quot;", 1, -1, 1)
Str = Replace(Str,"<","&lt;", 1, -1, 1)
Str = Replace(Str,">","&gt;", 1, -1, 1)
HTMLEncode = Str
end function
相关文档:
前段时间读了不少关于MVC的文章,试着在ASP中应用了一下,发现对于小程序,代码量会大幅度增加,但是逻辑清晰,数据封装很合理,以前需要仔细规划的代码复用竟然成了理所当然的事情。
所谓MVC,即Model(模型),View(视图),Control(控制)三层架构。各部分各司其职,Model即底层构架,包含与数据库连接的部分,View ......
ASP采集-ASP采集程序原理
采集程序的主要步骤如下:
一、获取被采集的页面的内容
二、从获取代码中提取所有用的数据
一、获取被采集的页面的内容
我目前所掌握的ASP常用获取被采集的页面的内容方法:
1、用serverXMLHTTP组件获取数据
以下内容为程序代码:
以下为引用的内容:
Function GetBody(weburl)
&n ......
<%
Private Const BITS_TO_A_BYTE = 8
Private Const BYTES_TO_A_WORD = 4
Private Const BITS_TO_A_WORD = 32
Private m_lOnBits(30)
Private m_l2Power(30)
Private Function LShift(lValue, iShiftBits)
If iShiftBits = 0 Then
LShift = lValue
Exit Function
ElseIf iShiftBits = 31 Then
If lValue And ......
<%
'建立文件夹函数
Function CreateFolder(strFolder)'参数为相对路径
'首选判断要建立的文件夹是否已经存在
Dim strTestFolder,objFSO
strTestFolder = Server.Mappath(strFolder)
Set objFSO = CreateObject("Scripting.FileSystemObject")
'检查文件夹是否存在
If not objFSO.FolderExists(strTestF ......