この資料はVBScriptを使用しテキストファイルを新規に作成しファイルにテキストを書き込むサンプルコードと実行結果を記します。
以下にテキストファイルを新規に作成し、作成したテキストファイルにテキストを書き込むVBScriptのサンプルコードと実行結果を記します。
OpenTextFileメソッドとCreateTextFileメソッドを利用したサンプルコードを以下に記します。
下記のの2つのVBScriptサンプルコードはまったく同じ動作をします。
Set fso = CreateObject("Scripting.FileSystemObject")
Const ForReading = 1, ForWriting = 2, ForAppending = 8
Set tso = fso.OpenTextFile("text1.txt", ForWriting, true)
tso.Write("foo")
tso.WriteLine("bar")
tso.WriteBlankLines(1)
tso.WriteLine("hoge")
tso.Write("hello" + vbCrLf + "world" + vbCrLf)
tso.Close
OpenTextFileの引数のForWritingは書き込みを指定。
3番目の引数のtrueは、上書き指定となっています。
Set fso = CreateObject("Scripting.FileSystemObject")
Set tso = fso.CreateTextFile("text2.txt", true)
tso.Write("foo")
tso.WriteLine("bar")
tso.WriteBlankLines(1)
tso.WriteLine("hoge")
tso.Write("hello" + vbCrLf + "world" + vbCrLf)
tso.Close
CreateTextFileの2つ目の引数trueはOpenTextFile同様に上書き指定となっています。
以下にサンプルコードの実行結果を記します。
ファイルに出力される結果は同じになります。
Scripting.FileSystemObjectを作成し、OpenTextFileメソッドまたは、 CreateTextFileメソッドを呼び出すことによりTextStreamオブジェクトが返却されます。
あとは、TextStreamオブジェクトのWrite, WriteLine, WriteBlankLinesを利用してテキストを出力しています。
また、改行定数であるvbCrLfによる改行も動作することを確認しています。
C:\wsh>cscript /nologo write1.vbs C:\wsh>type text1.txt foobar hoge hello world
C:\wsh>cscript /nologo write2.vbs C:\wsh>type text2.txt foobar hoge hello world