VBScript如何从函数返回ArrayList

Tal*_*n06 8 vbscript

我试图将文件读入数组列表,然后从函数返回它.我的函数用于将文件读取到数组,但是当我尝试将其设置为变量时,它会错误地说出无效的过程调用或参数

我的阅读文件代码

function readfile(strFile)
dim fs,objTextFile 
set fs=CreateObject("Scripting.FileSystemObject")
dim arrStr
set objTextFile = fs.OpenTextFile(strFile)
Set userArrayList = CreateObject( "System.Collections.ArrayList" )

Do Until objTextFile.AtEndOfStream 
strNextLine = objTextFile.Readline 
userArrayList.add strNextLine
Loop 

objTextFile.Close
set objTextFile = Nothing
set fs = Nothing

readfile = userArrayList
end function
Run Code Online (Sandbox Code Playgroud)

在我的代码中调用它

arr = readfile("\\dc1\NETLOGON\Scripts\Add_Users\user.csv")

For Each present In arr
user = split(present,",")
WScript.Echo user(0) & user(1) & user(2) & user(3) & user(4) & "|"
Next
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

Tal*_*n06 9

结果我需要使用set这里是工作代码.工作功能

function readfile(strFile)
dim fs,objTextFile 
set fs=CreateObject("Scripting.FileSystemObject")
dim arrStr
set objTextFile = fs.OpenTextFile(strFile)
Set userArrayList = CreateObject( "System.Collections.ArrayList" )

Do Until objTextFile.AtEndOfStream 
strNextLine = objTextFile.Readline 
userArrayList.add strNextLine
Loop 

objTextFile.Close
set objTextFile = Nothing
set fs = Nothing

set readfile = userArrayList
end function
Run Code Online (Sandbox Code Playgroud)

工作电话

Dim arr
set arr = readfile("\\dc1\NETLOGON\Scripts\Add_Users\user.csv")
For Each present In arr
user = split(present,",")
WScript.Echo user(0) & user(1) & user(2) & user(3) & user(4) & "|"
'WScript.Echo present & "|"
Next
Run Code Online (Sandbox Code Playgroud)

  • 有时它可能只是那么简单:).+1用于查找和发布您的解决方案. (5认同)