クリエイター手抜きプロジェクト[191]InDesign CS3編 InDesign CS3でFTP、HTTP通信を行う(6)
── 古籏一浩 ──

投稿:  著者:


今回はFTPのアップロード処理について説明します。

改造したInDesign CS3では、ファイルをダウンロードするだけでなくアップロードすることもできます。サーバーへのアクセス方法は、get()を使ってダウンロードする場合と全く同じです。異なるのはアップロードする命令です。

アップロードする場合はput()を使います。最初のパラメータにアップロードしたいファイルオブジェクトを指定します。ファイル名ではない点には注意してください。2番目のパラメータには、サーバーにアップロードした際に付けるファイル名になります。

put()は正しくファイルがアップロードされるとtrue、アップロードに失敗した場合はfalseを返します。これにより、エラーメッセージを表示したり処理を継続するかどうか判断することができます。



サンプル7では、ファイル選択ダイアログで指定されたファイルをサーバーにアップロードします。同期通信のため、ファイルサイズが大きいと、完全に転送が終わるまで次の処理が行われないので注意してください。大量のファイルをアップロードする場合や、サイズの大きいファイルをアップロードする場合は、同期通信でなく非同期通信を使って処理する方が好ましい場合もあります。同期通信と非同期通信の切り替えは、FTPオブジェクトのasyncまたはsyncプロパティで指定することができます(詳しくは、JavaScript Tools Guideを参照してください)。

ファイル転送の際に、バイナリモードとアスキーモードの指定を行うこともできます。特に指定しない場合は、バイナリモードになっています。バイナリモード、アスキーモードの設定は、FTPオブジェクトのbinary、asciiプロパティで設定することができます。binaryプロパティにtrueを設定すると自動的にasciiプロパティはfalseに設定されます。

●サンプル
// 選択したファイルをFTPサーバーにアップロードする
var uploadFile = File.openDialog("アップロードするPDFファイルを指定し
てください");
var uploadFilename = uploadFile.name; // ファイル名だけを抜き出す
putFtpData("ftp://www.openspc2.org","adobe","indesign", uploadFile, up
loadFilename);

// FTPを使って指定されたサーバーファイルをアップロードする
function putFtpData(sURL, userName, password, fileObj, file){
if ( !ExternalObject.webaccesslib ) {
ExternalObject.webaccesslib = new ExternalObject("lib:webaccesslib");
}
var ftp = new FtpConnection(sURL);
ftp.username = userName;
ftp.password = password;
ftp.ftpDir = "./";
var flag = ftp.put(fileObj, file);
if (flag== false){
alert("アップロードできませんでした");
}
ftp.close();
}

【古籏一浩】openspc@po.shiojiri.ne.jp
< http://www.openspc2.org/
>
ScanSnap買ったんですが、一回使って終了。Microsoft QuickBasicのマニュアルをPDF化しただけ……。仕事依頼や連絡はメール、校正はPDF。スキャンすべき紙がない……。お金に困ったら何でも鑑定団にだそうかと思っている、他の著者からもらったサイン本くらいしかない……。一番たまっているのはCLUB DYDOのポイントカードかも。でも数えたら2500ptしかなかった。

・Illustrator CS4使い方辞典
< http://www.openspc2.org/reibun/IllustratorCS4/
>

photo
組版時間を半減する! InDesign自動処理実例集
(株)シータス
技術評論社 2008-11-25
おすすめ平均 star
starプログラミング経験のない方も気軽に挑戦してほしいです

1ランク上の技を身につけるInDesignの強化書 [+DESIGNING Professional Bible] (マイコミムック) (MYCOMムック +DESIGNING Professional Bi) InDesign 逆引きデザイン事典[CS3/CS2/CS対応] Adobe InDesign「文字組み」徹底攻略ガイド InDesign CS3の仕事術 InDesignレイアウト手帖



photo
改訂第4版 JavaScript ポケットリファレンス
古籏 一浩
技術評論社 2006-10-18
おすすめ平均 star
starJavaScriptを使ったプロジェクトのお供に是非
starJavaScript仮免者以上の方へ
starバランスの良いバイブル
star中級者向けです。

[改訂版] PHP ポケットリファレンス (Pocket reference) 改訂新版 SQLポケットリファレンス (Pocket reference) スタイルシート ポケットリファレンス (Pocket reference) 改訂第5版 オールカラー  HTML ポケットリファレンス (POCKET REFERENCE) 正規表現ポケットリファレンス (POCKET REFERENCE)

by G-Tools , 2009/01/26