VBS 基礎-9 ランタイムライブラリ
VBScriptが他の言語と比較して強力な点として、ローカルPCのファイルシステムにアクセス可能な事があげられます。
ファイルシステムへのアクセスはランタイムライブラリのFileSystemObjectを利用します。
ランタイムとか違った言葉を使いましたが、要はオブジェクトです。
dim fpath
dim fs , filets
fpath = "ファイルパス"
Set fs = createObject("Scripting.FileSystemObject")
if fs.FileExists(fpath) then
if fs.GetExtensionName(fpath) = "txt" then
set filets = fs.OpenTextFile(fpath , 1)
msgbox(filets.readAll())
else
msgbox("CSVファイルではないので処理データの取得は行われません")
end if
else
msgbox("指定ファイルは存在しません")
end if
上記では fpath = "ファイルパス" で指定したファイルの内容をダイアログに表示しています。
ここでファイルへのアクセスに createObject(指定) を使用しています。これはScriptingライブラリのfilesystemObjectを利用するからです。
fs.FileExists(fpath)では与えられたファイルが存在するかどうかを判断しています。
fs.GetExtensionName(fpath)ではファイルの拡張子を返しています。
実際のファイルの内容の取得は set filets = fs.OpenTextFile(fpath , 1) にて、テキストファイルとして開き、テキストストリームオブジェクトを取得しています。
テキストストリームはオブジェクトですので set を利用し取得しています。実際のファイル内容は テキストストリームのメソッドである readAll() によって返されています。
OpenTextFileメソッドの2番目の引数はファイルの取得モードです。
1 の指定で読込み専用として、2 の指定で書き込み専用として開きます。8を指定した場合、追記書き込みとして、ファイルポインタが最後に設定された状態で開かれます。
2008年 10月 9日ドキュメント作成
2008年 10月 9日ドキュメント更新