|

|
|
 |
2.12 ファイルの情報を見る |
 |
|
|
|
|
|
ファイルの種類やサイズ、作成日などのファイルの情報を調べるときの方法です。ファイルの情報を調べるには、まずファイルシステムオブジェクトのGetFileメソッドでファイルの情報を取得した後、取得したファイルオブジェクトのSizeやDateCreatedなどのプロパティを見ればOKです。
なお、このメソッドを使うとアンチウィルスが悪さをしたと勘違いし「ウィルスかもしれません!」なんて警告メッセージが出るかも知れません。
|
|
|
|
|
|
|
|
|
|
ファイルの情報を調べる例です。例は、プログラムがあるフォルダ内に(プログラムが保存されているフォルダ内に)あるファイルの情報を取得し、その内容をコンソール(プロンプト画面)に表示するという処理をしています。情報を見たいファイルは、プログラム起動時にパラメタで与えます。
基本的な内容(エラー回避や起動パラメタの受け取り、他)は2.5 テキストファイルの行単位の読み込みと同じなので、細かい説明は省略します。(決して手抜きじゃないです…)
この例でのポイントは2つ。一つ目は、Fの所でGetFileメソッドを使いファイルの情報を得ている所です。パラメタはファイルのフルパスを指定します。このメソッドを実行すると、ファイルの情報をファイルオブジェクトとして取得できます。
ファイルオブジェクトを取得したら、あとはこのオブジェクトのプロパティを参照すれば各種の情報を得る(Hの部分)ことができます。例では、ファイル名(Name)、ファイルサイズ(Size)、種類(Type)、作成日(DateCreated)、最終アクセス日(DateLastAccessed)、最終更新日(DateLastModified)を表示しています。
■VBScriptの記述例
Option Explicit
Dim objParm
'@パラメタ情報の保存
Set objParm = Wscript.Arguments
'A取得したパラメタが1コ以外のときはエラー
If objParm.Count <> 1 Then
WScript.echo "パラメタは必ず1つです(汗)"
Else
'B取得したパラメタが1コのときはOK
Call prcFileInformation
End If
Set objParm = Nothing
'これ以降はCallなどで呼び出さない限り実行されない
'=============================================================
'以降はファイル情報の取得用プロシージャ
'上のBから呼び出される
'=============================================================
Sub prcFileInformation()
'Cファイルの有無を調べるために定義
On Error Resume Next
Dim objFileSys
Dim objFile
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))
'FGetFileでファイルの情報を得ます
Set objFile = objFileSys.GetFile(strCheckPath)
'Gファイル有りのときはErr.Numberが0
If Err.Number = 0 then
'Hファイルに関する各種の情報を表示します
WScript.echo "ファイル名 :" & objFile.Name
WScript.echo "サイズ :" & objFile.Size
WScript.echo "種類 :" & objFile.Type
WScript.echo "作成日 :" & objFile.DateCreated
WScript.echo "最終アクセス日:" & objFile.DateLastAccessed
WScript.echo "最終更新日 :" & objFile.DateLastModified
Else
'Iファイルが無いときのエラーメッセージを表示します
WScript.echo "ファイル" & objParm(0) & "は、ありません(汗)"
End If
Set objFile = Nothing
Set objFileSys = Nothing
End Sub
|
■JScript(JavaScript)の記述例
//@パラメタ情報の保存
var objParm = WScript.arguments;
//A取得したパラメタが1コ未満のときはエラー
if (objParm.length!=1) {
WScript.echo("パラメタが足りません(汗)");
} else {
//B取得したパラメタが1コのときはOK
prcFileInformation();
}
//オブジェクト破棄
objParm = null;
//これ以降は呼び出さない限り実行されない
//=============================================================
//以降はファイル情報の取得用プロシージャ
//上のBから呼び出される
//=============================================================
function prcFileInformation() {
var objFileSys;
var objFile;
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 {
//FGetFileでファイルの情報を得ます
objFile = objFileSys.GetFile(strCheckPath);
//Hファイルに関する各種の情報を表示します
WScript.echo("ファイル名 :" + objFile.Name);
WScript.echo("サイズ :" + objFile.Size);
WScript.echo("種類 :" + objFile.Type);
WScript.echo("作成日 :" + objFile.DateCreated);
WScript.echo("最終アクセス日:" + objFile.DateLastAccessed);
WScript.echo("最終更新日 :" + objFile.DateLastModified);
} catch(e) {
//Iファイルが無いときのエラーメッセージを表示します
WScript.echo("ファイル" & objParm(0) & "は、ありません(汗)");
}
objFile = null;
objFileSys = null;
}
|
|
|
|
|
|