| Name | ファイルの名前 |
| ShortName | 8.3形式のファイル名 |
| Path | ファイルのフルパス |
| ShortPath | 8.3形式のフルパス |
| Size | バイト単位のファイルサイズ |
| Type | ファイルの種類 ex) "GIF イメージ" |
| Attributes | ファイルの属性 |
| DateCreated | 作成日時 |
| DateLastModified | 更新日時 |
| DateLastAccessed | 最終アクセス日時 |
| Drive | ファイルが格納されているDriveオブジェクト |
| ParentFolder | ファイルが格納されているFolderオブジェクト |
| Name | フォルダの名前 |
| ShortName | 8.3形式のフォルダ名 |
| Path | フォルダのフルパス |
| ShortPath | 8.3形式のフルパス |
| Size | バイト単位のフォルダサイズ |
| Attributes | フォルダの属性 |
| DateCreated | 作成日時 |
| DateLastModified | 更新日時 |
| DateLastAccessed | 最終アクセス日時 |
| Drive | フォルダが格納されているDriveオブジェクト |
| ParentFolder | フォルダが格納されているFolderオブジェクト |
| IsRootFolder | ルートフォルダかどうかを返す |
| Files | フォルダ内のFileオブジェクトのコレクション |
| SubFolders | フォルダ内のFolderオブジェクトのコレクション |
| TotalSize | バイト単位の総ディスク容量 |
| FreeSpace | バイト単位の使用可能なディスク容量 |
| AvailableSpace | バイト単位のユーザが使用可能なディスク容量 |
| DriveLetter | ドライブ名 ex) "C" |
| Path | パスを返す ex) "C:" |
| VolumeName | ボリューム名 |
| ShareName | ドライブのネットワーク共有名 |
| RootFolder | ルートフォルダを表すFolderオブジェクト |
| DriveType | ドライブの種類を示す値を整数で返す |
| FileSystem | ファイルシステムを表す文字列 ex) "FAT" |
| SerialNumber | ディスクボリュームのシリアル番号 |
| IsReady | 準備できているかどうかを返す |
例えば、読み取り専用で隠しファイルなら3が返ります。
0 通常のファイル 1 読み取り専用ファイル 2 隠しファイル 4 システムファイル 8 ディスク ドライブ ボリューム ラベル 16 フォルダ 32 ファイルが前回のバックアップ以降に変更されているかどうか 64 ショートカット 128 圧縮ファイル
そのファイルが隠しファイルかどうかを判定するには次のようにします。
if(f1.Attributes & 2)
WScript.Echo(f1.Name + "は隠しファイル");
else
WScript.Echo(f1.Name + "は隠しファイルでない");
0 不明 1 リムーバブル ディスク 2 ハード ディスク 3 ネットワーク ドライブ 4 CD-ROM 5 RAM ディスク
したがって次のようなことはできません。
var fs = WScript.CreateObject("Scripting.FileSystemObject");
var windir = fs.GetFolder("c:\\windows");
var d = windir.DateLastModified; //VBの日付型
WScript.Echo(d.getYear()); //エラー not a Date object
いったんStringオブジェクトにしてからDateオブジェクトにすることはできます。
var strdate = "" + windir.DateLastModified; //Fri Dec 29 18:32:46 UTC+0900 2000
var d = new Date(strdate);
WScript.Echo(d.getYear());
WSH2.0が使える人はここだけでもVBScriptにするとよいでしょう。
scripts/getyear.wsf
-------------------------------------------------------------
<job id="getYear">
<script language="VBScript">
//VBのDate型の年を返す関数
function vbgetYear(vbdate)
vbgetYear = Year(vbdate)
end function
</script>
<script language="JavaScript">
var fs = WScript.CreateObject("Scripting.FileSystemObject");
var windir = fs.GetFolder("c:\\windows");
WScript.Echo(vbgetYear(windir.DateLastModified));
</script>
</job>