[VBS]Zeilen kopieren und ersetzen

sheen

Grünschnabel
Hallo zusammen,

Ich habe das untenstehende Script, welches mir die Datei test.txt Zeile für Zeile in die neu
erstellte Datei test2.txt kopiert und die wörter "test" durch "replaced test" ersetzt.
Die Datei sieht so aus:
***************************
ich
bin
ein
test
ich
bin
ein
test
*************************

Code Quell text:
*******************************************************
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Name = FSO.OpenTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\test.txt")
Set Name2=FSO.CreateTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\test2.txt")

do until Name.AtEndOfStream
line=Name.readLine
If InStr(line, "test") Then
line = Replace(line, "test", "replaced test")
End If
Name2.writeLine line
loop
Name.close
Name2.close
******************************************
Ausgabedatei:
******************************************
ich
bin
ein
replaced test
ich
bin
ein
replaced test
***********************************************

Nun möchte ich aber, dass "replaced test" nicht in test2.txt kopiert wird, sondern einfach diese Zeile überspringt.
Mein Coe dazu (der gibt nur eine leere Datei aus):
*************************************************************************************
Set FSO = CreateObject("Scripting.FileSystemObject")
Set Name = FSO.OpenTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\test.txt")
Set Name2=FSO.CreateTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\test2.txt")

do until Name.AtEndOfStream
line=Name.readLine
If InStr(line, "test") Then
line = Replace(line, "test", "replaced test")
If line<>"replaced test" Then
Name2.writeLine line
End If
End If
loop
Name.close
Name2.close


Wo mache ich den Denkfehler?
 
Zuletzt bearbeitet:
Mist, ich habs selber gefunden, Die Lösung war:

Set FSO = CreateObject("Scripting.FileSystemObject")
Set Name = FSO.OpenTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\test.txt")
Set Name2=FSO.CreateTextFile("C:\Dokumente und Einstellungen\T. Hintermann\Desktop\bla\test2.txt")

do until Name.AtEndOfStream
line=Name.readLine
If line<>"test" Then
Name2.writeLine line

End If
loop
Name.close
Name2.close
 

Neue Beiträge

Zurück