如何将 2 个数组变量放入配置 (.ini) 文件中?

How to put a 2 array variables in config (.ini) file?

我有这个 VBScript,它根据文件名将特​​定文件发送到 FTP。

Option Explicit
Dim objFSO, objMyFile, objShell, strFTPScriptFileName, strFilePut
Dim strLocalFolderName, strScriptFolder, strFTPServerName, strLoginID, strReportPath
Dim strPassword, strFTPServerFolder

Dim objArg, strIniFilePath, oShell

Dim i: i = 0

'Locates the INI File
Set objArg = WScript.Arguments
strIniFilePath = objArg(0)

'Gets FTP UserId and Password
strLocalFolderName = ReadIni(strIniFilePath,"FTP","LocalFolderName")
strFTPServerName = ReadIni(strIniFilePath,"FTP","FTPServerName")
strLoginID = ReadIni(strIniFilePath,"FTP","LoginID")
strPassword = ReadIni(strIniFilePath,"FTP","Password")

strFTPScriptFileName = ReadIni(strIniFilePath,"FTP","FTPScriptFileName")

strReportPath= Array("/davaoccc" , "/calambaccc" , "/cebuccc")
strFilePut= Array("0970*.txt" , "0979*.txt" , "0983*.txt")


Set oShell = CreateObject("WScript.Shell")
Set objFSO = CreateObject("Scripting.FileSystemObject")


Set objFSO = CreateObject("Scripting.FileSystemObject")

If (objFSO.FileExists(strFTPScriptFileName)) Then
objFSO.DeleteFile (strFTPScriptFileName)
End If

For i = 0 To UBound(strReportPath)
Set objMyFile = objFSO.CreateTextFile(strFTPScriptFileName, True)
objMyFile.WriteLine ("open " & strFTPServerName)
objMyFile.WriteLine (strLoginID)
objMyFile.WriteLine (strPassword)
objMyFile.WriteLine ("cd " & strReportPath(i))
objMyFile.WriteLine ("bin")
objMyFile.WriteLine ("lcd " & strLocalFolderName)
objMyFile.WriteLine ("prompt off")
objMyFile.WriteLine ("mput " & strFilePut(i))
objMyFile.WriteLine ("disconnect")
objMyFile.WriteLine ("bye")
objMyFile.Close

'Execute the FTP script. 
Set objShell = WScript.CreateObject( "WScript.Shell" )
objShell.Run "ftp -s:" & Chr(34) & strFTPScriptFileName & Chr(34), , True 

next

这是 .ini 文件

[FTP]
LocalFolderName=D:\Output\
FTPServerName=172.22.11.220
LoginID=user
Password=1234
FTPScriptFileName=D:\FTP_Log.txt

如您所见,变量的值在 .ini 文件中(硬编码值应在 .ini 文件中)但两个变量除外:strReportPath , strFilePut

FTP中有多个目标文件夹,并且根据文件名不同的文件(文件以0970、0979、0983开头),此VBScripts成功发送。但是我很难理解如何以数组变量仍然匹配的方式将 2 个数组变量放入配置 ini 文件中。 (例如,/davaoccc 代表 0970,/calambaccc 代表 0979,/cebuccc 代表 0983)

有人知道或有想法吗?

我试图在互联网上搜索此内容,但没有关于此内容的主题。非常感谢您的回答。

将数组元素放在逗号分隔的列表中,然后编写一些 VBscript 来解析这些值。

strReportPath = /davaoccc,/calambaccc,/cebuccc

strFilePut= 0970*.txt,0979*.txt,0983*.txt

我假设所有值都以文本形式读取,因此您可以删除字符串引号。