|

|
|
 |
2.2 パスを編集する |
 |
|
|
|
|
|
たとえば変数1と変数2という2つの変数があって、変数1にはc:\happyのパス情報が、変数2にはtextfile.txtのファイル名情報が入っているとき、これら2つの変数の内容をくっつけてc:\happy\textfile.txtというフルパスを作りたいときの話です。
基本的には単純にくっつけりゃ済む話なのですが、そのときに¥が入るとか入らないとかを考えなきゃイカンし、それが意外と面倒!なぜ面倒かは、下の説明を見てください。
パスとファイル名が別々に保存されていて、それらの内容を結合しc:\happy\textfile.txtという内容を作りたいとき、次のようなパターンそれぞれを考える必要があります。
◆パターン1
パス /c:\happy\
ファイル名/textfile.txt
※そのままくっつければいいです
◆パターン2
パス /c:\happy
ファイル名/\textfile.txt
※これも、そのままくっつければいいです
◆パターン3
パス /c:\happy\
ファイル名/\textfile.txt
※どっちかの\記号が不要なのでカットしなければなりません。
◆パターン4
パス /c:\happy
ファイル名/textfile.txt
※\記号を新たに追加しなければなりません。
|
というわけで、上のようなことで悩まずにBuildPathを使って一発で済ましましょう。
|
|
|
|
|
|
|
|
|
|
そんなわけで、BuildPathの使い方です。こいつは、ファイルシステムオブジェクトに付いている機能で、パラメタ(引数)として2つの文字列を渡してあげます。例では、strPathとstrFileNameという変数にそれぞれパス名とファイル名を入れ、その後BuildPathで編集したフルパスをstrFullPathへ保存しています。
なお、例ではBuildPathにパス名とファイル名で渡していますが、このメソッドは2つの文字列を結合するときに必要に応じて¥記号を入れたり削ったりしているだけなので、渡すパラメタを両方ともパス名にしてもOKです。
■VBScriptの記述例
Option Explicit
Dim objFileSys
Dim strPath
Dim strFileName
Dim strFullPath
Set objFileSys = CreateObject("Scripting.FileSystemObject")
strPath = "c:\happy"
strFileName = "textfile.txt"
'BuildPathメソッドでフルパスを作成
strFullPath = objFileSys.BuildPath(strPath,strFileName)
WScript.Echo "パス…" & strPath
WScript.Echo "ファイル名…" & strFileName
WScript.Echo "くっつけ後のフルパス…" & strFullPath
'オブジェクト破棄
Set objFileSys = Nothing
|
■JScript(JavaScript)の記述例
var strPath;
var strFileName;
var strFullPath;
var objFileSys = new ActiveXObject("Scripting.FileSystemObject");
strPath = "c:\\happy"
strFileName = "textfile.txt"
//BuildPathメソッドでフルパスを作成
strFullPath = objFileSys.BuildPath(strPath,strFileName);
WScript.echo("パス…" + strPath);
WScript.echo("ファイル名…" + strFileName);
WScript.echo("くっつけ後のフルパス…" + strFullPath);
//オブジェクト破棄
objFileSys = null;
|
|
|
|
|
|