記事
· 2021年5月23日 2m read

イメージファイルを FTP サーバからアップロード/ダウンロードする方法ご紹介

これは InterSystems FAQ サイトの記事です。

%Net.FtpSession クラスを使用して FTP サーバから、アップロード/ダウンロードする方法をご紹介します。

1. FTPサーバにイメージファイルをアップロードする

 set tmpfile="c:\temp\test.jpg"
 set ftp=##class(%Net.FtpSession).%New() 
 // ftp サーバへ接続する
 do ftp.Connect("<サーバ名>","<ユーザ名>","<パスワード>")
 // 転送モードをBINARYに設定
 do ftp.Binary()
 // アップロードするディレクトリに移動
 do ftp.SetDirectory("/temp/upload")
 // アップロードするファイルのストリームを用意   
 set file=##class(%File).%New(tmpfile)
 do file.Open("UK\BIN\")
 // ファイルをアップロード
 // 第1引数: アップロード先に作成するファイル名
 // 第2引数: アップロードするファイル・ストリーム
 do ftp.Store("test.jpg",file)
 // ftp サーバからログアウト
 do ftp.Logout()
 // ファイルを閉じる
 do file.Close()
 // (オプション) アップロードしたファイルを削除する
 //do ##class(%File).Delete(tmpfile)

 

2. FTPサーバからイメージファイルをダウンロードする

 set ftp=##class(%Net.FtpSession).%New()     // ftp サーバへ接続する
 do ftp.Connect("<サーバ名>","<ユーザ名>","<パスワード>")     // 転送モードをBINARYに設定
 do ftp.Binary()     // ダウンロードして格納するファイル・ストリームを用意
 set stream=##class(%FileBinaryStream).%New()
 do stream.LinkToFile("c:\temp\testdownload.jpg")
 // ダウンロードするディレクトリに移動
 do ftp.SetDirectory("/temp/download")     // ファイルをダウンロードしてストリームを閉じる
 do ftp.Retrieve("test.jpg",stream)
 do stream.SaveStream()
 Set stream=""     // ftp サーバからログアウト
 do ftp.Logout() 

関連する FAQ トピックもご参照ください。

ディスカッション (0)1
続けるにはログインするか新規登録を行ってください