web-dev-qa-db-de.com

Erstellen und Schreiben von Zeilen in eine Datei

Kann man eine Datei erstellen und Zeilen in vbscript schreiben?

Etwas, das echo in der bat -Datei (echo something something >>sometextfile.txt) ähnelt.

Bei der Ausführung des VBScripts würde abhängig vom Pfad des Skripts eine Datei autorun.inf erstellt, um ein bestimmtes Programm auszuführen (\ smartdriverbackup\sdb.exe).

Wie kann ich auch den Laufwerkbuchstaben aus dem vollständigen Dateipfad entfernen/entfernen?

39
Dario Dias
Set objFSO=CreateObject("Scripting.FileSystemObject")

' How to write file
outFile="c:\test\autorun.inf"
Set objFile = objFSO.CreateTextFile(outFile,True)
objFile.Write "test string" & vbCrLf
objFile.Close

'How to read a file
strFile = "c:\test\file"
Set objFile = objFS.OpenTextFile(strFile)
Do Until objFile.AtEndOfStream
    strLine= objFile.ReadLine
    Wscript.Echo strLine
Loop
objFile.Close

'to get file path without drive letter, assuming drive letters are c:, d:, etc
strFile="c:\test\file"
s = Split(strFile,":")
WScript.Echo s(1)
101
ghostdog74

Sie müssen sich mit File System Object beschäftigen. Siehe dieses OpenTextFile method-Beispiel.

6
Rubens Farias
' Create The Object
Set FSO = CreateObject("Scripting.FileSystemObject")

' How To Write To A File
Set File = FSO.CreateTextFile("C:\foo\bar.txt",True)
File.Write "Example String"
File.Close

' How To Read From A File
Set File = FSO.OpenTextFile("C:\foo\bar.txt")
Do Until File.AtEndOfStream
    Line = File.ReadLine
    WScript.Echo(Line)
Loop
File.Close

' Another Method For Reading From A File
Set File = FSO.OpenTextFile("C:\foo\bar.txt")
Set Text = File.ReadAll
WScript.Echo(Text)
File.Close
0
TheRealSuicune