BuildPath

(PWS4 IIS4 IIS5)
BuildPath — 既存のパスの末尾に名前を追加します。

構文

object.BuildPath(path, name)

パラメータ

object
FileSystemObject オブジェクトを指定します。
path
既存のパスを指定します。
name
パスに追加する名前を指定します。

戻り値

値を返しません。

説明

BuildPath メソッドは既存のパスと指定した名前の間にパスの区切り文字を挿入します。

JScript

1
2
3
4
5
6
7
function GetBuildPath(path)
{
   var fso, newpath;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   newpath = fso.BuildPath(path, "新しいフォルダ");
   return(newpath);
}

VBScript

1
2
3
4
5
6
Function GetBuildPath(path)
   Dim fso, newpath
   Set fso = CreateObject("Scripting.FileSystemObject")
   newpath = fso.BuildPath(path, "サブ フォルダ")
   GetBuildPath = newpath
End Function

Drives

(PWS4 IIS4 IIS5)
Drives — ローカル マシンで利用できるすべての Drive オブジェクトが入った Drives コレクションを返します。

構文

object.Drives

パラメータ

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

戻り値

全てのドライブ情報を含む Drives コレクションを返します。

説明

リムーバブル メディア ドライブは、ドライブにメディアが挿入されていなくても Drives コレクションに含まれます。

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
function ShowDriveList()
{
   var fso, s, n, e, x;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   e = new Enumerator(fso.Drives);
   s = "";
   for (; !e.atEnd(); e.moveNext())
   {
      x = e.item();
      s = s + x.DriveLetter;
      s += " - ";
      if (x.DriveType == 3)
         n = x.ShareName;
      else if (x.IsReady)
         n = x.VolumeName;
      else
         n = "[ドライブの準備ができていません。]";
      s +=   n + "<br />";
   }
   return(s);
}

VBScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Function ShowDriveList
   Dim fso, d, dc, s, n
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set dc = fso.Drives
   For Each d in dc
      n = ""
      s = s & d.DriveLetter & " - "
      If d.DriveType = 3 Then
         n = d.ShareName
      ElseIf d.IsReady Then
         n = d.VolumeName
      End If
      s = s & n & "<br />"
   Next
   ShowDriveList = s
End Function

FileSystemObject オブジェクト

ファイル システムへアクセスする方法を提供します。

* Drives
* BuildPath
* CopyFile
* CopyFolder
* CreateFolder
* CreateTextFile
* DeleteFile
* DeleteFolder
* DriveExists
* FileExists
* FolderExists
* GetAbsolutePathName
* GetBaseName
* GetDrive
* GetDriveName
* GetExtensionName
* GetFile
* GetFileName
* GetFolder
* GetParentFolderName
* GetSpecialFolder
* GetTempName
* MoveFile
* MoveFolder
* OpenTextFile


Item

(PWS4 IIS4 IIS5)
Item — Dictionary オブジェクトにある指定されたキーと関連付ける項目を設定します。コレクションの場合は、指定されたキーに対応するオブジェクトを返します。値の取得も可能です。

構文

object.Item(key)[ = newitem]

パラメータ

object
Files コレクションを指定します。
key
コレクションの要素名(キー)を指定します。
newitem
キーに対応する値を設定します。

戻り値

キーに対応する要素を返します。

説明

項目を変更するときに引数 key で指定したキーが見つからない場合、newitem で指定した項目と関連付けられた、引数 key で指定した新しいキーが作成されます。また、既存の項目を取得するときに引数 key で指定したキーが見つからない場合は、空の項目と関連付けられた、引数 key で指定した新しいキーが作成されます。

JScript

1
2
3
4
5
6
7
8
9
10
function DicTest(keyword)
{
   var a, d;
   d = new ActiveXObject("Scripting.Dictionary");
   d.Add("a", "アテネ");
   d.Add("b", "ベオグラード");
   d.Add("c", "カイロ");
   a = d.Item(keyword);
   return(a);
}

VBScript

1
2
3
4
5
6
7
8
Function ItemDemo
   Dim d   ' Create some variables.
   Set d = CreateObject("Scripting.Dictionary")
   d.Add "a", "アテネ"   ' キーと項目を追加します。
   d.Add "b", "ベオグラード"
   d.Add "c", "カイロ"
   ItemDemo = d.Item("c")   ' 項目を取得します。
End Function

Count

(PWS4 IIS4 IIS5)
Count — コレクションの中のオブジェクト数、または Dictionary オブジェクトに格納される項目の数を返します。値の取得のみ可能です。

構文

object.Count

パラメータ

object
Files コレクションを指定します。

戻り値

要素の数を返します。

説明

フォルダに含まれるファイルの数を調べる事ができます。

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function CountDemo()
{
   var a, d, i, s;                 // 変数を作成します。
   d = new ActiveXObject("Scripting.Dictionary");
   d.Add ("a", "アテネ");          // キーと項目を追加します。
   d.Add ("b", "ベオグラード");
   d.Add ("c", "カイロ");
   a = (new VBArray(d.Keys()));    // キーを取得します。
   s = "";
   for (i = 0; i < d.Count; i++)   // 取得した配列に繰り返し処理を行います。
   {
      s += a.getItem(i) + " - " + d(a.getItem(i)) + ">BR<";
   }
   return(s);                      // 結果を返します。
}

VBScript

1
2
3
4
5
6
7
8
9
10
11
12
Function ShowKeys
   Dim a, d, i, s   ' 変数を作成します。
   Set d = CreateObject("Scripting.Dictionary")
   d.Add "a", "アテネ"   ' キーと項目を追加します。
   d.Add "b", "ベオグラード"
   d.Add "c", "カイロ"
   a = d.Keys   ' キーを取得します。
   For i = 0 To d.Count -1 ' 配列に繰り返し処理を行います。
      s = s & a(i) & "<br />" ' 結果を返します。
   Next
   ShowKeys = s
End Function

Files コレクション

コレクションには、フォルダ内のすべての File オブジェクトが含まれています。

* Count
* Item


OpenAsTextStream

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

構文

object.OpenAsTextStream [iomode, [format]]

パラメータ

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

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

定数 内容
ForReading 1 ファイルを読み取り専用として開きます。このファイルには書き込むことができません。
ForWriting 2 ファイルを書き込み専用として開きます。既存ファイルがある場合、以前の内容は上書きされます。
ForAppending 8 ファイルを開き、ファイルの最後に追加して書き込みます。
format

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

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

戻り値

値を返しません。

説明

OpenAsTextStream メソッドは、FileSystemObject オブジェクトの OpenTextFile メソッドとほぼ同じ機能を提供します。OpenTextFile メソッドと異なるのは、ファイルを追加書き込みではなく書き込み専用に開くことができます。

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function TextStreamTest( )
{
   var fso, f, ts, s;
   var ForReading = 1, ForWriting = 2, ForAppending = 8;
   var TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.CreateTextFile( "test1.txt" );           // ファイルを作成します。
   f = fso.GetFile("test1.txt");
   ts = f.OpenAsTextStream(ForWriting, TristateUseDefault);
   ts.Write( "Hello World" );
   ts.Close( );
   ts = f.OpenAsTextStream(ForReading, TristateUseDefault);
   s = ts.ReadLine( );
   ts.Close( );
   return(s);
}

VBScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
Function TextStreamTest
   Const ForReading = 1, ForWriting = 2, ForAppending = 8
   Const TristateUseDefault = -2, TristateTrue = -1, TristateFalse = 0
   Dim fso, f, ts
   Set fso = CreateObject("Scripting.FileSystemObject")
   fso.CreateTextFile "test1.txt"   ' Create a file.
   Set f = fso.GetFile("test1.txt")
   Set ts = f.OpenAsTextStream(ForWriting, TristateUseDefault)
   ts.Write "Hello World"
   ts.Close
   Set ts = f.OpenAsTextStream(ForReading, TristateUseDefault)
   TextStreamTest = ts.ReadLine
   ts.Close
End Function

Move

(PWS4 IIS4 IIS5)
Move — 指定されたファイルまたはフォルダを別の場所へ移動します。

構文

object.Move destination

パラメータ

object
File オブジェクトを指定します。
destination
必ず指定します。ファイルまたはフォルダの移動先を指定します。ワイルドカード文字は使用できません。

戻り値

値を返しません。

説明

ファイルを移動します。
フォルダ名は絶対パスで指定する必要があります。
File オブジェクトに対して実行した Move メソッドの結果は、FileSystemObject.MoveFile メソッドまたは FileSystemObject.MoveFolder メソッドを使用して実行するのと同じ結果になります。ただし、これらの代替メソッドを使用した場合は、複数のファイルやフォルダをコピーすることもできます。


Delete

(PWS4 IIS4 IIS5)
Delete — 指定されたファイルまたはフォルダを削除します。

構文

object.Delete force

パラメータ

object
File オブジェクトを指定します。
force
省略可能です。読み取り専用属性がオンになっているファイルやフォルダも削除の対象とする場合は真 (true) を、読み取り専用のファイルやフォルダは削除しない場合は偽 (false) (既定) を指定します。

戻り値

値を返しません。

説明

指定したファイルまたはフォルダが存在しなかった場合は、エラーが発生します。

File オブジェクトまたは Folder オブジェクトに対して実行した Delete メソッドの結果は、FileSystemObject.DeleteFile メソッドまたは FileSystemObject.DeleteFolder メソッドを使用して実行するのと同じ結果になります。

Delete メソッドでは、ほかのフォルダやファイルを含むフォルダと何も含まないフォルダとは区別されません。指定したフォルダは、ほかのファイルやフォルダが格納されているかどうかに関係なく削除されます。

JScript

1
2
3
4
5
6
7
var fso, f;
fso = new ActiveXObject("Scripting.FileSystemObject");
f = fso.CreateTextFile("c:\\testfile.txt", true);
f.WriteLine("これはテストです。");
f.Close();
f = fso.GetFile("c:\\testfile.txt");
f.Delete();

VBScript

1
2
3
4
5
6
7
Dim fso, MyFile
Set fso = CreateObject("Scripting.FileSystemObject")
Set MyFile = fso.CreateTextFile("c:\testfile.txt", True)
MyFile.WriteLine("これはテストです。")
MyFile.Close
Set MyFile = fso.GetFile("c:\testfile.txt")
MyFile.Delete

Copy

(PWS4 IIS4 IIS5)
Copy — ファイルをコピーする

構文

object.Copy FileName [, Option]

パラメータ

object
File オブジェクトを指定します。
FileName
コピー先のファイル名を指定します。
Option
オプションのパラメータ Option に FALSE が指定された場合、ファイルを上書きしません。デフォルトは TRUE です。

戻り値

値を返しません。

説明

ファイルのコピーを作成します。

VBScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Sub ManipFiles
   Dim fso, f1, f2, s
   Set fso = CreateObject("Scripting.FileSystemObject")
   Set f1 = fso.CreateTextFile("c:\testfile.txt", True)
   Response.Write "ファイルを書き込んでいます。<br />"
   '1 行書き込みます。
   f1.Write ("これはテストです。")
   ' ファイルを閉じます。
   f1.Close
   Response.Write "c:\tmp にファイルを移動しています。<br />"
   ' C:\ のルートにあるファイルへのハンドルを取得します。
   Set f2 = fso.GetFile("c:\testfile.txt")
   ' \tmp ディレクトリにファイルを移動します。
   f2.Move ("c:\tmp\testfile.txt")
   Response.Write "c:\temp にファイルをコピーしています。<br />"
   ' \temp にファイルをコピーします。
   f2.Copy ("c:\temp\testfile.txt")
   Response.Write "ファイルを削除しています。<br />"
   ' ファイルの現在の位置へのハンドルを取得します。
   Set f2 = fso.GetFile("c:\tmp\testfile.txt")
   Set f3 = fso.GetFile("c:\temp\testfile.txt")
   ' ファイルを削除します。
   f2.Delete
   f3.Delete
   Response.Write "完了しました !"
End Sub

JScript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
function ManipFiles()
{
   var fso, f1, f2, s;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   f1 = fso.CreateTextFile("c:\\testfile.txt", true);
   Response.Write("ファイルに書き込んでいます。<br />");
   // 1 行書き込みます。
   f1.Write("これはテストです。");
   / ファイルを閉じます。
   f1.Close();
   Response.Write("c:\\tmp にファイルを移動しています。<br /> ");
   // C:\ のルートにあるファイルへのハンドルを取得します。
   f2 = fso.GetFile("c:\\testfile.txt");
   // \tmp ディレクトリにファイルを移動します。
   f2.Move ("c:\\tmp\\testfile.txt");
   Response.Write("c:\\temp にファイルをコピーしています。<br />");
   // \temp にファイルをコピーします。
   f2.Copy ("c:\\temp\\testfile.txt");
   Response.Write("ファイルを削除しています。<br />");
   // ファイルの現在の位置へのハンドルを取得します。
   f2 = fso.GetFile("c:\\tmp\\testfile.txt");
   f3 = fso.GetFile("c:\\temp\\testfile.txt");
   // ファイルを削除します。
   f2.Delete();
   f3.Delete();
   Response.Write("完了しました !");
}