プロが教えるわが家の防犯対策術!

最近 InDesign javascript を独学で勉強しております。

保存時にファイル名を決めてページ単位でEPSを保存したいのですが、
もうすでに保存場所に同じファイル名が存在した場合に
「同じ名前のファイルがあります」と出したいのですが、
どのようにすれば良いのかわかりません。
検索してみたのですが、ファイル名を指定してファイルがあるかを確認するスクリプトなら
ありましたが、上記質問内容に該当するやり方が見つかりません。

ご指導お願いいたします。

質問者からの補足コメント

  • やはり方法がないのですね。

      補足日時:2017/02/16 08:36

A 回答 (1件)

こんにちは。

 回答がないようなので…

InDesignのスクリプトは知りませんので、具体的なコードは示せませんが、ご質問の内容は容易に実現可能と思います。

>ファイル名を指定してファイルがあるかを確認する
>スクリプトならありましたが、~~
とのことですが、それができれば、ほとんどできたも同然といえます。

例えば、その確認するスクリプトが、
 function fileExist(filename){ ~~ }
のような形で定義されていて、存在したらtrue、無ければfalseを返すものと仮定して、

 if( fileExist(filename) ){
  alert("同じ名前のファイルがあります");
  // 名前が重複した場合の処理
 } else {
  // ファイル保存処理(?)
 }
のような条件分岐を行うことで、実現できることと思います。

ファイルが存在する間は、リネームして再トライするというような処理なら
 var flag = false;
 while( fileExist(filename)){
  flag = true;
  // リネーム処理
 }
 if( flag ) alert("同じ名前のファイルがあるので、別名保存しました。");
のような処理でも良いのかもしれません。


※ 上記はECMAに準じた記述法ですので、必ずしもAdobeのスクリプトの記法と一致しているとは限りません。ご注意ください。
    • good
    • 0
この回答へのお礼

時間が経ってしまってからのお礼で大変申し訳ありませんでした。

上記回答にて、手を加えた結果、無事できました。

ありがとうございました。

お礼日時:2017/05/13 16:13

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