Vbscript .vbs帮助我在目录中循环此操作

Vbscript .vbs帮助我在目录中循环此操作,vbscript,windows-scripting,Vbscript,Windows Scripting,我写了一个有效的脚本。它现在所做的是通过目录查找给定文件,并返回第二行第四个选项卡RXC193上的内容,并将该文件重命名为从以下文件中找到的文件: Sub TwoDimensionArrayTest(fileName) 'you may want a more descriptive name ' ... sFileLocation = fileName ' ... End Sub @程序@RxBIN@RXPCN@RxGroup@MemberID@website@W

我写了一个有效的脚本。它现在所做的是通过目录查找给定文件,并返回第二行第四个选项卡RXC193上的内容,并将该文件重命名为从以下文件中找到的文件:

Sub TwoDimensionArrayTest(fileName) 'you may want a more descriptive name

    ' ...
    sFileLocation = fileName
    ' ...

End Sub
@程序@RxBIN@RXPCN@RxGroup@MemberID@website@WebsiteS@VerticalLogo@TextLogo RXCUT 013824 RXCUT RXC193 RXC5FHXF9 www.RXCUT.com/HBG www.RXCUT.com/HBG/es P:\RXCUT\In Design Implementation\RXC193

我需要这个脚本能够做的是循环遍历目录,并通过这个RXC重命名所有文件。以下是脚本:

Call TwoDimensionArrayTest

Sub TwoDimensionArrayTest
' Version 1.0
' Writtem by Krystian Kara
' Dated 25-Jan-2009


    Dim fso
    Dim oFile
    Dim arrline
    Dim arrItem
    Dim objFolder
    Dim i
    Dim arrMain()
    Dim sFileLocation, strResults

    Const forReading = 1

' The file contains on each line:
    ' Text1 (tab) Text2 (tab) Text3 (tab) Text4
    ' Text5 (tab) Text6 (tab) Text7 (tab) Text8
'etc etc


    Set fso = CreateObject("Scripting.FileSystemObject")
        sFileLocation = "file 2.txt"

        Set oFile = fso.OpenTextFile(sFileLocation, forReading, False)

    Do While oFile.AtEndOfStream <> True
        strResults = oFile.ReadAll
    Loop

' Close the file
    oFile.Close

' Release the object from memory
    Set oFile = Nothing

' Return the contents of the file if not Empty
    If Trim(strResults) <> "" Then

        ' Create an Array of the Text File
        arrline = Split(strResults, vbNewLine)
    End If

    For i = 0 To UBound(arrline)
        If arrline(i) = "" Then
            ' checks for a blank line at the end of stream
            Exit For
        End If 

        ReDim Preserve arrMain(i)

            arrMain(i) = Split(arrline(i), vbTab)

    Next

    fso.MoveFile "file 2.txt", arrMain(1)(3) & ".txt"

End Sub ' TwoDimensionArrayTest
提前感谢,,
Joe

一种方法是在子过程中参数化文件名,以便可以对不同的文件多次调用,如下所示:

Sub TwoDimensionArrayTest(fileName) 'you may want a more descriptive name

    ' ...
    sFileLocation = fileName
    ' ...

End Sub
然后,编写一个遍历目录的循环,每次调用sub:

Dim fso, folder

Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder("Your Folder Name")
For Each file In folder.Files
    TwoDimensionArrayTest file.Path
Next

这是最终的无错误代码!最后让它搜索我的Tab-delimited.txt文件目录,从第二行第三个选项卡组号抓取,然后将文件重命名为其对应的组号!耶

这是最终的无错误代码!:

Call TwoDimensionArrayTest
亚二维阵列测试

模糊fso 淡色 暗棱线 暗棱项目 昏暗的我 暗棱 尺寸文件位置,strResults

Const forReading = 1
strFolder=C:\Documents and Settings\jmituzas.NMCLLC\Desktop\desktop2\New Folder 2\datafiles 设置objFSO=CreateObjectScripting.FileSystemObject 对于objFSO.GetFolderstrFolder.Files中的每个objFSO文件 如果RightLCaseobjFile.Name,4=LCase.txt,则

    ' The file contains on each line:
' Text1 (tab) Text2 (tab) Text3 (tab) Text4
' Text5 (tab) Text6 (tab) Text7 (tab) Text8
等等

设置fso=CreateObjectScripting.FileSystemObject sFileLocation=objFile.Name

    Set oFile = fso.OpenTextFile(objFile.Name, forReading, False)

Do While oFile.AtEndOfStream <> True
    strResults = oFile.ReadAll
Loop

' Close the file
oFile.Close
如果结束 下一个
End Sub'TwoDimensionArrayTest

我一直收到无效的调用过程您还应该删除调用TwoDimensionArrayTest行,因为在我建议的更改之后,TwoDimensionArrayTest需要一个参数。