Пример в этой статье описывает, как Delphi анализирует адреса FTP. Поделитесь этим со всеми для справки. Конкретный метод реализации заключается в следующем:
процедура TForm1.FTPAnaанализ(S:string;var UserName,Password,IP,FileName:String;var DirList:TStringList);var i,j:integer; strAuthorization,strAddr,strDirFile:string; //Информация об авторизации Begin UserName:= ' анонимный'; Пароль: = '[email protected]'; IP: = ''; Copy(S,7,length(S)-6); //Получаем часть после ftp:// //Формат S должен быть похож на ftp://rec:[email protected]/20050418/abcdef.vox, //или ftp://192.168.76.11/...... i := Pos('@',S); if(i>0) then start strAuthorization := Copy(S,7,i-7); // Берем только поле пароля учетной записи j:=Pos(':',strAuthorization); if(j<1)then exit; UserName := Copy(strAuthorization,1,j); - 1); Пароль := Copy(strAuthorization,j+1,length(strAuthorization)-j); end; i := Pos('@',strAddr); j:=Pos('/',strAddr); if(j>0) then IP := Copy(strAddr,i+1,ji-1);//Получаем IP-адрес strDirFile := Copy(strAddr,j+ 1 ,length(strAddr)-j); DirList.Delimiter := '/'; DirList.DelimitedText := strDirFile;//Получить список каталогов FileName := DirList[DirList.count-1];//Последняя часть — имя файла DirList.Delete(DirList.Count-1);end;
Я надеюсь, что эта статья будет полезна каждому программисту на Delphi.