FTP資訊儲存和擷取
我們在做FTP相關開發時,為友善後續FTP切換,一般先把FTP賬戶資訊儲存到資料庫表中,在使用時再通過Query擷取出來。
一般通過如下方式擷取到FTP相關資訊,代碼如下:
1 //擷取FTP資訊
2 with qTmp do
3 begin
4 Close;
5 SQL.Clear;
6 SQL.Text := 'SELECT * FROM SYS_FTP_INFO WHERE NAME = ''Test'' ';
7 Open;
8 SYS_FTPUSER := FieldByName('USERNAME').AsString;
9 SYS_FTPPASSWORD := FieldByName('PASSWORD').AsString;
10 SYS_FTPSERVER := FieldByName('IP').AsString;
11 SYS_FTPDIR := FieldByName('PATH').AsString;
12 end;
idFTP檔案下載下傳
下載下傳這裡主要用到Get函數,三個參數:
Param1:檔案名稱(包含字尾名)
Param2:想要儲存的路徑(最終檔案儲存位置的全路徑)
Param3:Ture/False 是否斷點續傳
一般操作代碼如下:
1 try
2 MsgDsp('開始擷取檔案,請稍等!');
3 with idFTP do
4 begin
5 if Connected then Disconnect;
6 Username := SYS_FTPUSER;
7 Password := SYS_FTPPASSWORD;
8 Host := SYS_FTPSERVER;
9 Port := 21;
10 Connect;
11 ChangeDir(SYS_FTPDIR);
12 Get(FILENAME, 'C:\tmp\' + FILENAME, True);
13 if Connected then Disconnect;
14 end;
15 MsgDsp('Recipe檔案擷取成功!')
16 except
17 on E: Exception do
18 begin
19 MsgDsp('檔案擷取失敗,請聯系IT處理!錯誤資訊:' + E.Message);
20 Abort;
21 end;
22 end;
idFTP 檔案上傳
上傳這裡主要用到Put函數,兩個參數:
Param1:需要上傳檔案的全路徑
Param2:檔案名稱(包含字尾名)
1 try
2 MsgDsp('開始上傳檔案,請稍等!');
3 with idFTP do
4 begin
5 if Connected then Disconnect;
6 Username := SYS_CLIENTFTPUSER;
7 Password := SYS_CLIENTFTPPASSWORD;
8 Host := SYS_CLIENTTPSERVER;
9 Port := SYS_PORT;
10 Connect;
11 ChangeDir(SYS_CLIENTFTPDIR);
12 Put('C:\tmp\' + FILENAME, ExtractFileName(FILENAME));13 if Connected then Disconnect;
14 end;
15 MsgDsp('檔案上傳成功!');
16 except
17 on E: Exception do
18 begin
19 MsgDsp('檔案上傳失敗,請聯系IT确認!錯誤資訊:' + E.Message);
20 Abort;
21 end;
22 end;
作者:Jeremy.Wu
出處:https://www.cnblogs.com/jeremywucnblog/
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。