■プログラム説明(ソースコード説明)
サンプルでは当日作成したpsd形式のファイルのみ開きます。現在の日付はnew Date()として日付オブジェクトを作成することで求めることができます。フォルダ内にある特定の日時に作成されたファイルのみ開くには、一覧を取得したいフォルダパスをFolder()で指定しフォルダオブジェクトを作成します。作成したフォルダオブジェクトのgetFiles()を使い特定の拡張子を持つファイルのみ取得します。このファイルのmodifiedプロパティに修正日時が入っているので、この日時と現在の日時を比較して同じ場合のみopen()でファイルを開きます。
---------------------------------------------------------------------------------------------------------
■ソースコード
dObj = new Date(); ←現在の日付を示すオブジェクトを作成します
cY = dObj.getFullYear(); ←現在の年(4桁)を取得します
cM = dObj.getMonth() + 1; ←現在の月を取得します
cD = dObj.getDate(); ←現在の日を取得します
folderRef = new Folder ("/psdata/"); ←一覧を取得するフォルダを指定します
fileList = folderRef.getFiles("*.psd"); ←ファイルリスト(拡張子がpsdのみ)を取得します
for (i=0; i<fileList.length; i++) ←ファイル数だけ繰り返します
{
fileRef = new File(fileList[i].fullName); ←ファイルオブジェクトを作成します
dObj = fileRef.modified; ←修正日時を取得します
fY = dObj.getFullYear(); ←修正年(4桁)を取得します
fM = dObj.getMonth() + 1; ←修正月を取得します
fD = dObj.getDate(); ←修正日を取得します
if ((cY == fY) && (cM == fM) && (cD == fD)) open(fileRef); ←同じ日付の場合ファイルを開きます。
}
---------------------------------------------------------------------------------------------------------
■使い方
1:特定のフォルダにファイルを用意しておきます。
2:ファイルメニューからスクリプトを実行します。
3:当日作成されたPSD形式のファイルのみ開かれ表示されます。
---------------------------------------------------------------------------------------------------------
■ポイント
当日でなく特定の日付に作成されたファイルを開く場合には以下のように直接日付を指定します。Dateオブジェクトで返される月は実際よりも1少ない値になるので注意が必要です。修正日でなく作成日で処理したい場合にはdObj = fileRef.modified;をdObj = fileRef.created;にしてください。
cY = 2004;
cM = 2;
cD = 11;
folderRef = new Folder ("/psdata/");
fileList = folderRef.getFiles("*.psd");
for (i=0; i<fileList.length; i++)
{
fileRef = new File(fileList[i].fullName);
dObj = fileRef.modified;
fY = dObj.getFullYear();
fM = dObj.getMonth() + 1;
fD = dObj.getDate();
if ((cY == fY) && (cM == fM) && (cD == fD)) open(fileRef);
}
---------------------------------------------------------------------------------------------------------
■注意
なし
■実際のスクリプトをダウンロード(sample.js.zip)