在Delphi XE3中使用TidFTP的示例
在Delphi XE3中使用TidFTP的示例。
仅基础处理。
连接到FTP服务器
IdFTP1.Host := 'example.com';
IdFTP1.Username := 'xxxxxx';
IdFTP1.Password := 'xxxxxxx';
IdFTP1.Port := 21;
IdFTP1.Passive := True;
IdFTP1.Connect;
断开与FTP服务器的连接
IdFTP1.Disconnect;
S := IdFTP1.RetrieveCurrentDir();
移至指定目录
IdFTP1.ChangeDir('test');
移至以上目录
IdFTP1.ChangeDirUp;
获取文件列表
uses IdFTPList;
var
FTPListItems: TIdFTPListItems;
FTPListItem: TIdFTPListItem;
I: Integer;
FileName: String;
FileSize: Integer;
ModifiedDate: TDateTime;
PermissionDisplay: string;
ItemType: String;
begin
IdFTP1.List;
FTPListItems := IdFTP1.DirectoryListing;
for I := 0 to FTPListItems.Count - 1 do
begin
FTPListItem := FTPListItems.Items[I];
FileName := FTPListItem.FileName;
FileSize := FTPListItem.Size;
ModifiedDate := FTPListItem.ModifiedDate;
PermissionDisplay := FTPListItem.PermissionDisplay;
case FTPListItem.ItemType of
ditDirectory: ItemType := 'Directory';
ditFile: ItemType := 'File';
ditSymbolicLink: ItemType := 'SymbolicLink';
ditSymbolicLinkDir: ItemType := 'SymbolicLinkDir';
ditBlockDev: ItemType := 'BlockDev';
ditCharDev: ItemType := 'CharDev';
ditFIFO: ItemType := 'FIFO';
ditSocket: ItemType := 'Socket';
end;
上载档案
SourceFile := 'C:\test\test.txt';
DestFile := 'sample.txt';
IdFTP1.Put(SourceFile, DestFile);
下载文件
SourceFile := 'sample.txt';
DestFile := 'C:\test\down.txt';
IdFTP1.Get(SourceFile, DestFile);
删除文件
IdFTP1.Delete('sample.txt');