ASP小偷程序 读取UTF-8 乱码求解???
===============================
下面的主页index.asp的内容
===============================
<!--#Include File="Config.asp"-->
<%
If Request.QueryString("Demo")<>"" Then
PageCode=GetHttpPage(Request.QueryString("Demo"))
Else
PageCode=GetHttpPage("http://wenwen.zzzyk.com/")
End If
PageCodes=PageCode
PageCode=ReplaceTest("<script(.|\n)*?</script>","",PageCodes)
Response.Write(PageCode)
%>
===============================
Config.asp 的内容
===============================
<%
'定义系统参数
Option Explicit
Dim SiteName,SiteUrl,SiteOpen,SiteCloseStr,i
Dim PageCode,PageCodes
dim Conn,Rs,Sqlstr,top
SiteName="" '站点名称
SiteUrl="" '站点路径
SiteOpen=True '站点是否开放,Ture为开放,False为关闭
SiteCloseStr="站点升级中!请稍候访问。。。" '站点关闭时显示的提示
top=""
'==========================================
'判断站点是否开启
'==========================================
If SiteOpen=False Then
Response.Write(SiteCloseStr)
Response.End()
End If
'==========================================
'正则表达式函数区
'==========================================
Function ReplaceTest(patrn,replStr,str)
Dim regEx,str1
str1=str
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
regEx.Global = True
ReplaceTest = regEx.Replace(str1,replStr)
End Function
Function RegExpTest(patrn, strng)
Dim regEx, Matchs, Matches, RetStr
Set regEx = New RegExp
regEx.Pattern = patrn
regEx.IgnoreCase = True
regEx.Global = True
Set Matches = regEx.Execute(strng)
For Each Matchs in Matches
RetStr = RetStr & Matchs.Value & "||"
Next
RegExpTest = RetStr
End Function
'==========================================
'采集函数区
'==========================================
'获取页面源代码函数
Function GetHttpPage(HttpUrl)
If IsNull(HttpUrl)=True Then
Response.Write("请输入网址!")
Exit Function
End If
Dim Http
Set Http=server.createobject("MSX"&"ML2.XML"&"HTTP")
Http.open "GET",HttpUrl,False
Http.Send()
If Http.Readystate<>4 then
Set Http=Nothing
response.Write("该网页无法访问!")
Exit function
End if
GetHttpPage=BytesToBSTR(Http.responseBody,"GB2312")
Set Http=Nothing
If Err.number<>0 then
Err.Clear
Response.Write(SiteCloseStr)
Response.End()
End If
End Function
'转换编码函数
Function BytesToBstr(Body,Cset)
Dim Objstream
Set Objstream = Server.CreateObject("adod"&"b.stream")
Objstream.Type = 1
Objstream.Mode =3
Objstream.Open
Objstream.Write body
Objstream.Position = 0
Objstream.Type = 2
Objstream.Charset = Cset
BytesToBstr = Objstream.ReadText
Objstream.Close
set Objstream = nothing
End Function
%>
要怎么改哦 ??我是新手 最好帮我改好。 西西!!
答案:GetHttpPage=BytesToBSTR(Http.responseBody,"GB2312")
中的 GB2312 改成 UTF-8
其他:编码不一致导致的吧。
上一个:怎么把应用程序池修改为“ASP.NET v4.0 ”。
下一个:我做的ASP程序在浏览时总显示客户的联系电话和地址一样的,是怎么回事,有谁知道的帮帮我啊