私は次のことを行うためにvbsスクリプトを書くことを探しています。-識別子の後にディレクトリ名が続くマッピングファイルがあります(例:123456-ドキュメント)。-マッピングファイルの各行には、他の場所に移動する必要がある識別子で始まるドキュメントがあります(例:123456_otherStuff_Dec12.xls)。-次に、ファイル名全体を解析し、真ん中の文字列(otherStuff)を使用して、どのサブディレクトリに入るのかを判断する必要があります。
したがって、上記の例では、ファイル「123456_otherStuff_Dec 12.xls」は、ディレクトリC:... / current / Documents / otherStuff /123456_otherStuff_Dec12.xlsにあるはずです。
私はvbsを初めて使用しますが、Javaを少し知っているので、これを開始することができました。これは私がこれまでに持っているものです:
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\Documents and Settings\w133960\Desktop\test1\Text1.txt", ForReading)
Const ForReading = 1
Dim arrFileLines()
i = 0
Do Until objFile.AtEndOfStream
Redim Preserve arrFileLines(i)
arrFileLines(i) = objFile.ReadLine
i = i + 1
Loop
objFile.Close
For Each strLine in arrFileLines
WScript.Echo strLine
MyArray = Split(strLine, "-", -1, 1)
WScript.Echo MyArray(0)
WScript.Echo MyArray(1)
Next
これはマッピングファイルを通過し、識別子を解析します。次の部分は、識別子で始まるファイルを検索し、そのファイル名を解析して、それに基づいて関連するディレクトリに移動します。現在のループ内に別のForループを追加し、ファイル名を解析してそのループ内でファイルを移動することもできますが、移動するファイルが数百あるため、この効率が心配です。誰かがこれを行うための最もクリーンで最も効率的な方法についてアドバイスできますか?どんな助けでも大歓迎です。