「これはヤバかったな」という遅刻エピソード

ImageJというフリーソフトのマクロ機能についてです。

繰り返し処理を用いてフォルダ内のファイル全てを開きたいと考えています。

フォルダは複数あり、それぞれのフォルダに名前が1、2、3、...というようなファイルが入っています。
ところがフォルダによっては「2」のファイルが入っていなかったり、「7」のファイルが入っていなかったりという状況で困り果てています。

調べてみたところFile.exists(path)というコマンドを使用するとファイルの有無を確認することができることが分かりました。
ファイルが存在する場合は「1」、存在しない場合は「0」がLog画面に表示されていくというものです。

このコマンドで各フォルダにどのファイルが存在するか確認し、Log画面に表示された「1」か「0」の数字をIf構文で場合分けをし、「1」ならばそのファイルを開き「0」ならば何も作業をせずに次へ、ということができるのではないかと考えました。

しかし、Log画面の「1」か「0」の数字をマクロ内で使用する方法がわかりません。
If("Log画面のn行目の数字==1")と書いたり
If("Log画面に表示された直前の数字==1")
のように書くことができれば解決できそうなのですが・・・

どなたかこのようなIf構文の書き方や、全く異なったものでも構わないので上記の作業を可能にできる方法をご存知ならば教えて下さい。

A 回答 (1件)

ログに表示されるのは、マクロに評価関数がそのまま書かれた場合の単なる実行結果であって、File.Exist()関数自体が値を返します。



> If("Log画面のn行目の数字==1")と書いたり
> If("Log画面に表示された直前の数字==1")
> のように書くことができれば解決できそうなのですが・・・

if(File.Exist(path)){ファイルが存在する場合の処理}

とかって出来るのでは?
    • good
    • 0
この回答へのお礼

アドバイス頂いた通りにすると上手くいきました!

本当に助かりました、ありがとうございます!

お礼日時:2015/01/20 16:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報