Procedimiento tForm1.ftPanalysis (s: String; VAR Nombre de usuario, contraseña, IP, nombre de archivo: String; var dirlist: tStringList);
varilla
I, J: entero;
Strauthorization, Straddr, strdirfile: String; // Información de autorización
Comenzar
Nombre de usuario: = 'anónimo';
Contraseña: = '[email protected]';
IP: = '';
straddr: = copia (s, 7, longitud (s) -6); // Obtenga la pieza después de ftp: //
// El formato S debe ser similar a ftp: // rec: [email protected]/20050418/abcdef.vox, o ftp: //192.168.76.11/...
i: = pos ('@', s);
if (i> 0) entonces
Comenzar
Strauthorización: = copia (s, 7, I-7);
j: = pos (':', strauthorization);
if (j <1) entonces
salida;
Nombre de usuario: = copia (strauthorization, 1, j-1);
Contraseña: = Copy (Strauthorization, j+1, longitud (strauthorization) -j);
fin ;
i: = pos ('@', straddr);
j: = pos ('/', straddr);
if (j> 0) entonces
Ip: = copy (straddr, i+1, ji-1); // Obtener dirección IP
strdirfile: = copy (straddr, j+1, longitud (straddr) -j);
Dirlist.delimiter: = '/';
Dirlist.delimitedText: = strdirfile; // get list de directorio
Nombre de archivo: = dirlist [dirlist.count-1]; // La última parte es el nombre del archivo
Dirlist.delete (Dirlist.Count-1);
fin ;