5,388
社区成员
发帖
与我相关
我的任务
分享
//检索文件夹并上传
procedure TForm1.Button4Click(Sender: TObject);
var
Search:TSearchRec;
first:string;
tr:TStrings;
begin
//连接FTP服务器
tr := TStringlist.Create;
IdFTP1.Host:=Help.ftpadd;
IdFTP1.Username:=Help.ftpname;
IdFTP1.Password:=Help.ftppwd;
IdFTP1.Connect();
Form1.ListBox1.Items.clear;
if (Edit1.Text<>'c:\') and (Edit1.Text<>'C:\')
then
begin
if rightStr(Edit1.Text,1)<>'\' then Edit1.Text:=Edit1.Text+'\';
FindFirst(Edit1.Text+'*.*',faAnyFile,Search);
While FindNext(Search)=0 do
begin
if Search.Name[1] <> '.' then //如果文件名不为"."或".."
begin
if (ExtractFileExt(Search.Name)='.txt') or (ExtractFileExt(Search.Name)='.gnlog') then
begin
//Form1.ListBox1.Items.Add(Search.Name);
//showmessage(Search.Name);
first:=leftStr(Search.Name,1);
//showMessage(first);
if Help.isnum(first)<>false then //判断文件名以英文字母的不用上传
begin
if Help.IsFileInUse(Search.Name)=false then //判断文件是否被使用
begin
with adoquery1 do
begin
close;
sql.clear;
sql.add('select * from t_jl0030 where filename='''+Search.Name+''' and com_mac='''+mac+''''); //判断文件是否上传
// showmessage(sql.Text);
open;
end;
if ADOQuery1.isEmpty then
begin
IdFTP1.ChangeDir('Test');
showmessage(Search.Name);
IdFTP1.Put(Edit1.Text+'\'+Search.Name,Search.Name,true);
Form1.ListBox1.Items.Add(Search.Name);
IdFTP1.Free;
end
end
end
end
end
end
end
end;