web-dev-qa-db-ja.com

行を作成してファイルに書き込む

ファイルを作成し、vbscriptで行を書き込むことは可能ですか?

bat in echo file(echo something something >>sometextfile.txt)に似たもの。

スクリプトのパスに応じてvbscriptを実行すると、特定のプログラムを実行するautorun.infファイルが作成されます(\ smartdriverbackup\sdb.exe)。

また、完全なファイルパスからドライブ文字を削除/削除するにはどうすればよいですか?

42
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)
106
ghostdog74

File System Object に対処する必要があります。こちらをご覧ください OpenTextFile method sample。

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
2
TheRealSuicune