その始まり、私はVBSがあまり得意ではありませんが、学ぼうとしています。現在、テキストファイルに置換を書き込むのにいくつかの問題があります。
私がやりたいのは、テキスト「VGML」を検索することです。これが見つかったら、同じ行で「STML」があるかどうかを確認します。ある場合は、ファイル内の位置を混乱させないように、これを「」に置き換える必要があります。最後に、「STML」なしで「VGML」が見つかった場合は、「VGML」を削除する必要があります。
これまでのところ、echoを使用すると、コードが希望どおりに動作することがわかりますが、ファイルに書き込むと、ほとんどの場合、コードによってすべてが削除された空のファイルが取得されます。
誰かが私を正しい方向に向けることができますか?
コードは次のとおりです。
Const ForReading = 1
Const ForWriting = 2
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.OpenTextFile("C:\Script\RemoveSTML\testFiles\test.txt", ForReading)
strEMTY = " "
strSTML = "STML"
strVGML = "VGML"
Do Until objFile.AtEndOfStream
strLine = objFile.ReadLine
If InStr(strLine,strVGML)>0 Then
If Instr(strLine,strSTML)>0 Then
strLine = Replace(strLine, strSTML, strEMTY)
wscript.Echo strLine
Else
strLine = Replace(strLine, strVGML, strEMTY)
wscript.Echo strLine
End If
End If
Loop
objFile.Close
Set objFile = objFSO.OpenTextFile("C:\Script\RemoveSTML\testFiles\test.txt", ForWriting)
objFile.Write strLine
objFile.Close
Wscript.Echo "done"
ご協力いただきありがとうございます!私に正しい方向へのキックを与えてくれて!