OpenTextFile

(PWS4 IIS4 IIS5)
OpenTextFile — 指定したファイルを開き、開いたファイルの読み取り、または追加書き込みに使用できる TextStream オブジェクトを返します。

構文

object.OpenTextFile (filename [, iomode [, create[, format ]]])

パラメータ

object
FileSystemObject オブジェクトを指定します。
filename
作成するファイルの名前を表す文字列式を指定します。
iomode
省略可能です。

以下の値が iomode パラメータ文字列として認識されます

定数 内容
ForReading 1 ファイルを読み取り専用として開きます。このファイルには書き込むことができません。
ForWriting 2 ファイルを書き込み専用として開きます。
ForAppending 8 ファイルを開き、ファイルの最後に追加して書き込みます。
create
省略可能です。
引数 filename で指定したファイルが存在しなかった場合に新しいファイルを作成するかどうかを示すブール値を指定します。
新しいファイルを作成する場合は真 (true) を、ファイルを作成しない場合は偽 (false) を指定します。省略した場合、新しくファイルは作成されません。
format
省略可能です。
開くファイルの形式を示す値を指定します。
省略した場合、ASCII ファイルとしてファイルが開かれます。

以下の値が format パラメータ文字列として認識されます

内容
TristateTrue ファイルを Unicode ファイルとして開きます。
TristateFalse ファイルを ASCII ファイルとして開きます。
TristateUseDefault システム デフォルトを使ってファイルを開きます。

戻り値

File オブジェクトを返します。

説明

ファイルを開きます。

JScript

1
2
3
4
5
6
var fs, a, ForAppending;
ForAppending = 8;
fs = new ActiveXObject("Scripting.FileSystemObject");
a = fs.OpenTextFile("c:\\testfile.txt", ForAppending, false);
...
a.Close();

VBScript

1
2
3
4
5
6
7
8
Sub OpenTextFileTest
   Const ForReading = 1, ForWriting = 2, ForAppending = 8
   Dim fso, f
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.OpenTextFile("c:\testfile.txt", ForWriting, True)
   f.Write "Hello world!"
   f.Close
End Sub

MoveFolder

(PWS4 IIS4 IIS5)
MoveFolder — フォルダ (複数可) を別の場所へ移動します。

構文

object.MoveFolder ( source, destination )

パラメータ

object
FileSystemObject オブジェクトを指定します。
source
移動するフォルダのパスを指定します。
パスの最後の構成要素内ではワイルドカード文字を使用できます。
destination
移動先のフォルダ名を指定します。

戻り値

値を返しません。

説明

フォルダを移動します。

引数 source にワイルドカード文字を使用したとき、および引数 destination がパスの区切り文字 (\) で終わるとき、引数 destination には既存フォルダを指定したと判断され、条件に一致するファイルがそのフォルダ内へ移動されます。それ以外のときは、引数 destination に作成するフォルダの名前を指定したと判断されます。いずれの場合でも、移動される各フォルダで発生する処理の実行は 3 種類あります。

* 引数 destination に指定したフォルダが存在しない場合、フォルダが移動します。これが通常の場合です。
* 引数 destination に指定したファイルが存在する場合、エラーが発生します。
* 引数 destination がディレクトリの場合、エラーが発生します。

引数 source でワイルドカード文字を使用した指定がどのフォルダとも一致しなかった場合も、エラーが発生します。MoveFolder メソッドは、最初のエラーが発生した時点で処理を中止します。エラーが発生するまでに行った処理を取り消したり元に戻したりする処理は一切行われません。

重要 このメソッドを使用してボリューム間でフォルダを移動できるのは、オペレーティング システムでボリューム間のフォルダ移動がサポートされている場合だけです。

JScript

1
2
3
4
5
6
function MoveFldr2Desktop(fldrspec)
{
   var fso;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.MoveFolder(fldrspec, "c:\\windows\\desktop\");
}

VBScript

1
2
3
4
5
Sub MoveAFolder(Drivespec)
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   fso.MoveFolder Drivespec, "c:\windows\desktop"
End Sub

MoveFile

(PWS4 IIS4 IIS5)
MoveFile — ファイル (複数可) を別の場所へ移動します。

構文

object.MoveFile ( source, destination )

パラメータ

object
FileSystemObject オブジェクトを指定します。
source
移動するファイルのパスを指定します。
パスの最後の構成要素内ではワイルドカード文字を使用できます。
destination
移動先のファイル名を指定します。

戻り値

値を返しません。

説明

ファイルを移動します。
移動元のファイル名にはワイルドカード「*」が使用できます。
引数 source にワイルドカード文字を使用したとき、および引数 destination がパスの区切り文字 (\) で終わるとき、引数 destination には既存フォルダを指定したと判断され、条件に一致するファイルがそのフォルダ内へ移動されます。それ以外のときは、引数 destination には作成するファイルの名前を指定したと判断されます。いずれの場合も、移動される各ファイルで発生する処理の実行は 3 種類あります。

* 引数 destination に指定したファイルが存在しない場合、ファイルが移動します。これが通常の場合です。
* 引数 destination に指定したファイルが存在する場合、エラーが発生します。
* 引数 destination がディレクトリの場合、エラーが発生します。

引数 source でワイルドカード文字を使用した指定がどのファイルとも一致しなかった場合も、エラーが発生します。MoveFile メソッドは、最初のエラーが発生した時点で処理を中止します。エラーが発生するまでに行った処理を取り消したり元に戻したりする処理は一切行われません。

JScript

1
2
3
4
5
6
function MoveFile2Desktop(filespec)
{
   var fso;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.MoveFile(filespec, "c:\\windows\\desktop\");
}

VBScript

1
2
3
4
5
Sub MoveAFile(Drivespec)
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   fso.MoveFile Drivespec, "c:\windows\desktop"
End Sub

GetTempName

(PWS4 IIS4 IIS5)
GetTempName — 一時ファイルまたは一時フォルダの名前をランダムに生成して返します。このメソッドは、一時ファイルや一時フォルダを必要とする処理を行うときに便利です。

構文

object.GetTempName

パラメータ

object
FileSystemObject オブジェクトを指定します。

戻り値

テンポラリファイル名を返します。

説明

GetTempName メソッドはテンポラリファイル名を返します。
これはファイルを作成するのでは無く、CreateTextFile を使ってファイルを作成する際に使用できる一時ファイル名を返すだけです。

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var fso, tempfile;
fso = new ActiveXObject("Scripting.FileSystemObject");

function CreateTempFile()
{
   var tfolder, tfile, tname, fname, TemporaryFolder = 2;
   tfolder = fso.GetSpecialFolder(TemporaryFolder);
   tname = fso.GetTempName();
   tfile = tfolder.CreateTextFile(tname);
   return(tfile);
}
tempfile = CreateTempFile();
tempfile.writeline("Hello World");
tempfile.close();

VBScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Dim fso, tempfile
Set fso = CreateObject("Scripting.FileSystemObject")

Function CreateTempFile
   Dim tfolder, tname, tfile
   Const TemporaryFolder = 2
   Set tfolder = fso.GetSpecialFolder(TemporaryFolder)
   tname = fso.GetTempName
   Set tfile = tfolder.CreateTextFile(tname)
   Set CreateTempFile = tfile
End Function

Set tempfile = CreateTempFile
tempfile.WriteLine "Hello World"
tempfile.Close

GetSpecialFolder

(PWS4 IIS4 IIS5)
GetSpecialFolder — 指定された特殊フォルダを返します。

構文

object.GetSpecialFolder ( folderspec )

パラメータ

object
FileSystemObject オブジェクトを指定します。
folderspec
特殊フォルダの種類を指定します。

以下の値が folderspec パラメータ文字列として認識されます

定数 内容
WindowsFolder 0 Windows オペレーティング システムによりセットアップされたファイルの置かれている Windows フォルダが返されます。
SystemFolder 1 ライブラリ、フォント、デバイス ドライバなどの置かれている System フォルダが返されます。
TemporaryFolder 2 一時ファイルの格納に使用される Temp フォルダが返されます。このパスは、環境変数 TMP より取得します。

戻り値

Folder オブジェクトを返します。

説明

TempフォルダやSystemフォルダのなどの特殊なフォルダの Folder オブジェクトを作成します。

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
var fso, tempfile;
fso = new ActiveXObject("Scripting.FileSystemObject");

function CreateTempFile()
{
   var tfolder, tfile, tname, fname, TemporaryFolder = 2;
   tfolder = fso.GetSpecialFolder(TemporaryFolder);
   tname = fso.GetTempName();
   tfile = tfolder.CreateTextFile(tname);
   return(tfile);
}
tempfile = CreateTempFile();
tempfile.writeline("Hello World");
tempfile.close();

VBScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Dim fso, tempfile
Set fso = CreateObject("Scripting.FileSystemObject")

Function CreateTempFile
   Dim tfolder, tname, tfile
   Const TemporaryFolder = 2
   Set tfolder = fso.GetSpecialFolder(TemporaryFolder)
   tname = fso.GetTempName
   Set tfile = tfolder.CreateTextFile(tname)
   Set CreateTempFile = tfile
End Function

Set tempfile = CreateTempFile
tempfile.WriteLine "Hello World"
tempfile.Close

GetParentFolderName

(PWS4 IIS4 IIS5)
GetParentFolderName — 指定されたパスの最後のファイルまたはフォルダの親フォルダの名前が入った文字列を返します。

構文

object.GetParentFolderName ( path )

パラメータ

object
FileSystemObject オブジェクトを指定します。
path
パス名を指定します。

戻り値

指定したパスのフォルダ名を返します。

説明

引数 path に指定したファイルまたはフォルダに親フォルダが存在しない場合は、長さ 0 の文字列 (“”) を返します。

GetParentFolderName メソッドは、引数 path で指定された文字列に対してのみ処理を行います。指定されたパスを解決したり、指定されたパスが実際に存在するかどうかを確認したりしません。

JScript

1
2
3
4
5
6
7
function ShowParentFolderName(filespec)
{
   var fso, s = "";
   fso = new ActiveXObject("Scripting.FileSystemObject");
   s += fso.GetParentFolderName(filespec);
   return(s);
}

VBScript

1
2
3
4
5
Function GetTheParent(DriveSpec)
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   GetTheParent = fso.GetParentFolderName(Drivespec)
End Function

GetFolder

(PWS4 IIS4 IIS5)
GetFolder — 指定されたパスに置かれているフォルダに対応する Folder オブジェクトを返します。

構文

object.GetFolder ( folderspec )

パラメータ

object
FileSystemObject オブジェクトを指定します。
folderspec
パス名を指定します。

戻り値

Folder オブジェクトを返します。

説明

指定したフォルダの Folder オブジェクトを作成します。
指定したフォルダが存在しない場合は、エラーが発生します。

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
function ShowFolderList(folderspec)
{
   var fso, f, fc, s;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   f = fso.GetFolder(folderspec);
   fc = new Enumerator(f.SubFolders);
   s = "";
   for (; !fc.atEnd(); fc.moveNext())
   {
      s += fc.item();
      s += "<br />";
   }
   return(s);
}

VBScript

1
2
3
4
5
6
7
8
9
10
11
Sub AddNewFolder(path, folderName)
   Dim fso, f, fc, nf
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.GetFolder(path)
   Set fc = f.SubFolders
   If folderName <> "" Then
      Set nf = fc.Add(folderName)
   Else
      Set nf = fc.Add("新しいフォルダ")
   End If
End Sub

GetFileName

(PWS4 IIS4 IIS5)
GetFileName — 指定されたパスの最後のファイル名またはフォルダ名を返します。

構文

object.GetFileName ( pathspec )

パラメータ

object
FileSystemObject オブジェクトを指定します。
pathspec
パス名を指定します。

戻り値

パスのファイル名を返します。

説明

引数 pathspec に指定した文字列の最後がファイル名になっていない場合は、長さ 0 の文字列 (“”) を返します。

GetFileName は、パスに指定された文字列に対してのみ処理を行います。指定されたパスを解決したり、指定されたパスが実際に存在するかどうかを確認したりしません。

JScript

1
2
3
4
5
6
7
function ShowFileName(filespec)
{
   var fso, s = "";
   fso = new ActiveXObject("Scripting.FileSystemObject");
   s += fso.GetFileName(filespec);
   return(s);
}

VBScript

1
2
3
4
5
Function GetAName(DriveSpec)
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   GetAName = fso.GetFileName(DriveSpec)
End Function

GetFile

(PWS4 IIS4 IIS5)
GetFile — 指定されたパスに置かれているファイルに対応する File オブジェクトを返します。

構文

object.GetFile( filespec )

パラメータ

object
FileSystemObject オブジェクトを指定します。
filespec
パス名を指定します。

戻り値

File オブジェクトを返します。

説明

指定されたパスのファイルに対応する File オブジェクトを返します。
ファイルが存在しない場合は、エラーが発生します。

JScript

1
2
3
4
5
6
7
8
9
10
11
function ShowFileAccessInfo(filespec)
{
   var fso, f, s;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   f = fso.GetFile(filespec);
   s = f.Path.toUpperCase() + "<br />";
   s += "作成日時:" + f.DateCreated + "<br />";
   s += "最終アクセス日時:" + f.DateLastAccessed + "<br />"; s += "<br />";
   s += "最終更新日時: " + f.DateLastModified
   return(s);
}

VBScript

1
2
3
4
5
6
7
8
9
10
Function ShowFileAccessInfo(filespec)
   Dim fso, f, s
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f = fso.GetFile(filespec)
   s = f.Path & ">br<"
   s = s & "作成日時: " & f.DateCreated & "<br />"
   s = s & "最終アクセス日時: " & f.DateLastAccessed & "<br />"
   s = s & "最終更新日時: " & f.DateLastModified
   ShowFileAccessInfo = s
End Function

GetExtensionName

(PWS4 IIS4 IIS5)
GetExtensionName — 指定されたパスの拡張子を表す文字列を返します。

構文

object.GetExtensionName( path )

パラメータ

object
FileSystemObject オブジェクトを指定します。
path
パス名を指定します。

戻り値

拡張子を表す文字列を返します。

説明

ネットワーク ドライブの場合は、ルート ディレクトリ (\) が構成要素であると見なされます。

引数 path に指定された文字列で拡張子に該当するものがない場合は、長さ 0 の文字列 (“”) が返されます。

JScript

1
2
3
4
5
6
7
function ShowExtensionName(filespec)
{
   var fso, s = "";
   fso = new ActiveXObject("Scripting.FileSystemObject");
   s += fso.GetExtensionName(filespec);
   return(s);
}

VBScript

1
2
3
4
5
Function GetAnExtension(DriveSpec)
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   GetAnExtension = fso.GetExtensionName(Drivespec)
End Function