|

|
|
 |
2.13 フォルダの情報を見る |
 |
|
|
|
|
|
フォルダのサイズ、作成日などのフォルダの情報を調べるときの方法です。フォルダの情報を調べるには、まずファイルシステムオブジェクトのGetFolderメソッドでファイルの情報を取得した後、取得したフォルダオブジェクトのSizeやDateCreatedなどのプロパティを見ればOKです。
なお、このメソッドを使うとアンチウィルスが悪さをしたと勘違いし「ウィルスかもしれません!」なんて警告メッセージが出るかも知れません。
|
|
|
|
|
|
|
|
|
|
ファイルの情報を調べる例です。例は、プログラムがあるフォルダ内に(プログラムが保存されているフォルダ内に)あるファイルの情報を取得し、その内容をコンソール(プロンプト画面)に表示するという処理をしています。情報を見たいファイルは、プログラム起動時にパラメタで与えます。
なお、プログラムのほとんどの部分が2.12 ファイルの情報を見ると同じです。違う部分は、フォルダの情報を得るときにGetFolderメソッド(F)を使っている所です。
■VBScriptの記述例
Option Explicit
Dim objParm
'@パラメタ情報の保存
Set objParm = Wscript.Arguments
'A取得したパラメタが1コ以外のときはエラー
If objParm.Count <> 1 Then
WScript.echo "パラメタは必ず1つです(汗)"
Else
'B取得したパラメタが1コのときはOK
Call prcFolderInformation
End If
Set objParm = Nothing
'これ以降はCallなどで呼び出さない限り実行しない。
'=============================================================
'以降はフォルダ情報の取得用プロシジャ
'上のBから呼び出される
'=============================================================
Sub prcFolderInformation()
'Cフォルダの有無を調べるために定義
On Error Resume Next
Dim objFileSys
Dim objFolder
Dim intSep
Dim strScriptPath
Dim strCheckPath
Set objFileSys = CreateObject("Scripting.FileSystemObject")
'Dプログラムが保存されているフォルダを取得します
strScriptPath = Replace(WScript.ScriptFullName,WScript.ScriptName,"")
'Eフォルダのフルパスを作成します
strCheckPath = objFileSys.BuildPath(strScriptPath,objParm(0))
'FGetFolderでフォルダの情報を得ます
Set objFolder = objFileSys.GetFolder(strCheckPath)
'Gフォルダ有りのときはErr.Numberが0
If Err.Number = 0 then
'Hフォルダに関する各種の情報を表示します
WScript.echo "フォルダ名 :" & objFolder.Name
WScript.echo "サイズ :" & objFolder.Size
WScript.echo "種類 :" & objFolder.Type
WScript.echo "作成日 :" & objFolder.DateCreated
WScript.echo "最終アクセス日:" & objFolder.DateLastAccessed
WScript.echo "最終更新日 :" & objFolder.DateLastModified
Else
'Iフォルダが無いときのエラーメッセージを表示します
WScript.echo "フォルダ" & objParm(0) & "は、ありません(汗)"
End If
Set objFolder = Nothing
Set objFileSys = Nothing
End Sub
|
■JScript(JavaScript)の記述例
//@パラメタ情報の保存
var objParm = WScript.arguments;
//A取得したパラメタが1コ未満のときはエラー
if (objParm.length!=1) {
WScript.echo("パラメタが足りません(汗)");
} else {
//B取得したパラメタが1コのときはOK
prcFolderInformation();
}
//オブジェクト破棄
objParm = null;
//これ以降は呼び出さない限り実行されない
//=============================================================
//以降はフォルダ情報の取得用プロシージャ
//上のBから呼び出される
//=============================================================
function prcFolderInformation() {
var objFileSys;
var objFolder;
var intSep;
var strScriptPath;
var strCheckPath;
objFileSys = new ActiveXObject("Scripting.FileSystemObject");
//Dプログラムが保存されているフォルダを取得します
strScriptPath = String(WScript.ScriptFullName).replace(WScript.ScriptName,"");
//Eフォルダのフルパスを作成します
strCheckPath = objFileSys.BuildPath(strScriptPath,objParm(0));
try {
//FGetFolderでフォルダの情報を得ます
objFolder = objFileSys.GetFolder(strCheckPath);
//Hフォルダに関する各種の情報を表示します
WScript.echo("ファイル名 :" + objFolder.Name);
WScript.echo("サイズ :" + objFolder.Size);
WScript.echo("種類 :" + objFolder.Type);
WScript.echo("作成日 :" + objFolder.DateCreated);
WScript.echo("最終アクセス日:" + objFolder.DateLastAccessed);
WScript.echo("最終更新日 :" + objFolder.DateLastModified);
} catch(e) {
//Iファイルが無いときのエラーメッセージを表示します
WScript.echo("ファイル" & objParm(0) & "は、ありません(汗)");
}
objFolder = null;
objFileSys = null;
}
|
|
|
|
|
|