qq_36257233
2017-06-14 08:49asp 执行出错啊。解码, showbo大神千呼万应你快来啊。
5
1.txt 45678 | 12-23-23-123-
2.txt的45678在最后一行。
下标越界: '[number: 0]'
如果在2.txt里面查到不到1.txt的scode代码,应该在1.txt里面读取一行新的scode代码,然后再2.txt里面继续查找啊。。。
<%@LANGUAGE="VBScript" CODEPAGE="65001"%>
<!--#include file="aspJSON1.17.asp"-->
<meta charset="utf-8" />
<%
Function EnCodeY(sText,sCode)'当参数传入
Dim arrCode(),i,flag,strResult
arrData = split(sText, "-")
cntData = UBOUND(arrData) - 1
cntCode = Len(sCode) - 1
Redim arrCode(cntCode)
For i = 0 To cntCode
arrCode(i) = Mid(sCode, i + 1, 1)
Next
flag = 0
strResult = ""
For i = 0 To cntData
strResult = strResult & CHR(Cint(arrData(i)) XOR ASC(arrCode(flag)))
IF flag = cntCode Then
flag = 0
Else
flag = flag + 1
End IF
Next
EnCodeY = strResult
End Function
function readText(path,charset)'读文件
set ts=server.CreateObject("adodb.stream")
ts.charset=charset'内容编码
ts.mode=3'读写模式
ts.type=2'文本模式
ts.open
ts.LoadFromFile path
readText=ts.readtext
ts.close:set ts=nothing
end function
function writeText(path,charset,text)'写文件
set ts=server.CreateObject("adodb.stream")
ts.mode=3'写写模式
ts.type=2'文本模式
ts.open
ts.charset=charset'内容编码
ts.WriteText text,1
ts.SaveToFile path,2
ts.close:set ts=nothing
end function
function findCode(v,arr)'查找开头数字一样的code值
dim i,l,arrCode
l=ubound(arr)
for i=0 to l
arrCode=split(arr(i)," | ")
if arrCode(0)=v then
findCode=arrCode(1)
exit function
end if
next
end function
function doDecode(path1,pathcode,pathrst)'path1:要解码的文件物理路径 pathcode:code文件物理路径 pathrst:解码保存文件物理路径
dim arrA,arrCode,l,i,s,scode,arr
'============
arrA=split(replace(readText(path1,"gb2312"),chr(13),""),chr(10))'注意如果要解密的字符不存在1.txt里面注意修改这里,下面的code同理
arrCode=split(replace(readText(pathcode,"gb2312"),chr(13),""),chr(10))
s=""
l=ubound(arrA)
for i=0 to l
arr=split(arrA(i)," | ")
scode=findCode(arr(0),arrCode)
if scode="" then
response.Write arr(0)&"找不到code代码<br>"
else
if s<>"" then s=s&chr(13)&chr(10)
s=s&arr(0)&" | "&EnCodeY(arr(1),scode)'如果不需要前缀id,去掉arr(0)&" | "&
end if
next
writeText pathrst,"gb2312",s
end function
doDecode server.MapPath("1.txt"),server.MapPath("2.txt"),server.MapPath("3.txt")
%>
解码完毕,<a href='3.txt' target='_blank'>点击查看解码文件</a>
- 点赞
- 回答
- 收藏
- 复制链接分享
2条回答
为你推荐
- asp 执行出错啊。解码, showbo大神千呼万应你快来啊。
- 解密
- 编码
- asp.net
- 2个回答