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/
本文版權歸作者和博客園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接,否則保留追究法律責任的權利。