asp 执行出错啊。解码, showbo大神千呼万应你快来啊。

Microsoft VBScript 编译器错误 错误 '800a03f9'

缺少 'Then'

/s/s.asp,行 57

if arr(i)<>"" and instr(arr(i)," | "))<>0 then'?в? |
------------------------------------^
这是什么问题

<%@LANGUAGE="VBScript" CODEPAGE="65001"%>

<%
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
if arr(i)<>"" and instr(arr(i)," | "))<>0 then'非空行并且包含 |
arrCode=split(arr(i)," | ")
if arrCode(0)=v then
findCode=arrCode(1)
exit function
end if
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))
arrCode=split(replace(readText(pathcode,"gb2312"),chr(13),""),chr(10))
s=""
l=ubound(arrA)
for i=0 to l
if trim(arrA(i))<>"" and instr(arrA(i)," | "))<>0 then'非空行并且包含 |
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
else
    response.Write arrA(i)&"为空或者没有分隔符号“ | ”<br>"
end if

next
writeText pathrst,"gb2312",s
end function

doDecode server.MapPath("1.txt"),server.MapPath("2.txt"),server.MapPath("3.txt")
%>
解码完毕,点击查看解码文件

3个回答

shit。。多了个括号,去掉
if arr(i)<>"" and instr(arr(i)," | ")) then
==>
if arr(i)<>"" and instr(arr(i)," | ")) then

showbo
支付宝加好友偷能量挖,胡杨等着我的招呼 doDecode里面的 if trim(arrA(i))<>"" and instr(arrA(i)," | ")<>0 then'非空行并且包含 |
3 年多之前 回复
showbo
支付宝加好友偷能量挖,胡杨等着我的招呼 回复qq_36257233: 有2个地方要改,第一个是findCode里面的:if arr(i)<>"" and instr(arr(i)," | ")<>0 then'非空行并且包含 |
3 年多之前 回复
showbo
支付宝加好友偷能量挖,胡杨等着我的招呼 回复showbo: 我去,<>有没有了。。(⊙﹏⊙)b。。
3 年多之前 回复
qq_36257233
qq_36257233 回复showbo: 你下面这句又多了一个括号。。。。
3 年多之前 回复
qq_36257233
qq_36257233 回复showbo: if arr(i)<>"" and instr(arr(i)," | "))<>0 then'非空行并且包含 |
3 年多之前 回复
showbo
支付宝加好友偷能量挖,胡杨等着我的招呼 回复qq_24036981: :)。。。这个对的,回的时候又忘记删了。。
3 年多之前 回复
qq_24036981
qq_24036981 if arr(i)<>"" and instr(arr(i)," | ")
3 年多之前 回复

Microsoft VBScript 编译器错误 错误 '800a03f9'

缺少 'Then'

/s/s.asp,行 57

if arr(i)<>"" and instr(arr(i)," | "))<>0 then'?в? |

大哥。又变这样了?我里面的内容 就是这样的。没有多余的空格。73628 | 89-69-10- 这是1.txt 2.txt是1666355 | d5lgn9die4ems2m

连个多余的空格都没有,下一行只是scode和数字不一样!!!。
73628 | 89-69-10-94-4-1-6-76-91-5-87-95-85-
73628 | 89-69-10-94-4-1-6-76-91-5-87-95-85-

73621 | 89-69-10-94-4-1-6-76-91-5-87-95-85-
73628 | 89-69-10-94-4-1-6-76-91-5-87-95-85-
73629 | 89-69-10-94-4-1-6-76-91-5-87-95-85-
73630 | 89-69-10-94-4-1-6-76-91-5-87-95-85-

73630 | d5lgn9die4ems2m
73628 | d5lgn9die4ems2m
73629 | d5lgn9die4ems2m
73621 | d5lgn9die4ems2m

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐