Q&A

  • 한가지 더 질문있습니다..
밑에처럼 파일을 다운로드 받습니다.
하지만 서버에 다운로드 받을 파일이 없을경우 사이즈가 0KB로 생성이 됩니다.
여기서 질문입니다.
파일이 업을경우 0KB로 생성조차 되지않게 만들고 싶습니다.
답변 부탁드립니다.



>안녕하세요. 밑에 소스를 보시면 저는 파일을 하나하나 선택해서 업로드를 합니다.
>그런데 이렇게 선택을 하지않고.. "c:\test\"폴더에 있는 모든 파일을 한번에 업로드를 하고싶습니다.
>그렇게 하려는 이유는 업로드 하는 파일명이 매일 다를수도 있기에 이렇게 선택을 해서 업로드하는게아니라
>해당 폴더의 전체파일을 업로드 하려고 합니다.
>도움 부탁드립니다.
>
>procedure TForm1.Button11Click(Sender: TObject);  
>
>var Filename:String;
>
>begin
>
>   Filename:=FormatDateTime('yyyymmdd', now);
>
>   IdFTP1.Host:=xxx.xxx.xxx.xxx;
>   IdFTP1.Username:='test';
>   IdFTP1.Password:='test';
>   IdFTP1.Port:=21;
>
>   try
>      IdFTP1.Connect(True);
>
>   except on E:Exception do
>      Showmessage('접속실패! 잠시 후 다시 접속하세요');
>
>   end;
>
>   if IdFTP1.Connected then begin
>   Showmessage('접속 정상');
>   end;
>
>  try
>     // test Upload!
>     IdFTP1.Put('c:\test\aaa_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\bbb_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\ccc_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\ddd_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\eee_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\fff_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\ggg_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\hhh_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\iii_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\jjj_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\kkk_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>     IdFTP1.Put('c:\test\lll_'+Filename+'.txt','/test/test'+Filename+'.txt',true);
>
>
>     Showmessage('파일 업로드 완료');
>     IdFTP1.Disconnect;
>
>   except
>       IdFTP1.Disconnect;
>       showmessage('업로드 에러!!');
>   end;
>
>end;
>
1  COMMENTS
  • Profile
    최용일 2008.11.08 09:22
    흠... put은 업로드인데요...

    TIdFTP.List 메소드를 이용해서 서버의 파일목록을 구한 후 없으면 다운받고자하는 파일이 없으면 다운로드를 안하시면 됩니다.