【发布时间】:2015-08-27 16:37:44
【问题描述】:
如果text = "" 创建内容= userval 的新文件,我想创建新文件,但如果Len(text) > 0 然后我想找到现有文件并在其中更改此文本,因此如果不存在则将文本和userval 添加到现有内容。
Public Property Let val(text,userval)
'on error resume next
Dim strText, strResult, strChange
If Len(text) >0 then
strChange = False
stream.open
stream.loadfromfile strAbsFile
strT = stream.readtext
splArr = split(strText,"^")
on error resume next
For i = 0 to Ubound(splArr)
splArrFields = split(splArr(i),"|")
If splArrFields(0) = text Then strChange = Replace(strText,splArrFields(0) & "^" & splArrFields(1),splArrFields(0) & "^" & userval) 'change value if exists
Next
If strChange Then strResult = strChange Else strResult = strT & "|" text & "^" & userval ' add text and value
stream.close
Else
strResult = userval
End If
response.write "text" & VarType(text) & " userval" & VarType(userval) & " strResult" & VarType(strResult) ' text8 userval8 strResult8
stream.open
stream.writetext mycstr(strResult)
for err11 = 0 to 50
stream.savetofile strAbsFile, 2
if Err.Number = 0 then exit for
Err.Clear
next
stream.close
End Property
但我得到一个错误:
错误:3001
错误(十六进制):BB9
来源:ADODB.Stream
描述:参数类型错误、超出可接受范围或相互冲突。
我认为问题线是stream.savetofile strAbsFile, 2
怎么了?
【问题讨论】:
-
哪一行引发了错误?
-
我不知道我在浏览器中查看,也不知道如何调试
-
在所有相关声明中添加error handling。
-
在我的情况下,只有这个 devguru.com/technologies/vbscript/14019 .Line 和 .Text 不适合我
-
我认为
stream.savetofile strAbsFile, 2这一行