CFtpFileFind sucht Dateien



  • Hi Leute

    Ich habe da ein kleines Problem mit einer File-Suche im Web
    ich möchte den Ínhalt eines verzeichnisses nach bestimmten
    Dateien durchsuchen

    "abc*.jpg";

    Ich versuchte folgenden ansatz:

    CInternetSession sess;
    	CString str,domain,strpath;
    
    	CFtpConnection* pConnect ;
    	pConnect = NULL;
    
    	domain="www.domain.de";
    	strpath="directory_1//directory_2//";
    
    	try{
    		pConnect=sess.GetFtpConnection(domain,"user","password",INTERNET_INVALID_PORT_NUMBER);
    
    		CFtpFileFind finder(pConnect);
    
    		// start looping
    		BOOL bWorking = finder.FindFile(_T(strpath+"abx*.jpg"));
    
    		while (bWorking)
    		{
    		         str=finder.GetFileUrl();
    			m_ctrlListBox.AddString(str);
    			bWorking = finder.FindNextFile();
    		}
    	}
    	catch(CInternetException *pEx)
    	{
    		pEx->ReportError(MB_ICONEXCLAMATION);
    		pConnect = NULL;
    		pEx->Delete();
    	}
    

    Ich bekomme dann immer die ganze URL , möchte aber nur den Dateiname haben
    Hat jemand eine Idee wie das am schnellsten (Perrfomance) geht?

    Danke
    Gruß Linus



  • Tjo... CFtpFileFind hat aber leider nur diese Funktion 😉 Warum schneidest de net einfach alles vor dem letzten "\" ab?

    Referenzen:
    CFtpFileFind::GetFileUrl
    CFtpFileFind Members



  • Das hab ich gemacht .
    Sieht aber nicht gerade sehr elegant aus,
    immer die Pfadlänge berechnen ...

    Ich dachte es gäbe eine schönere Lösung.

    Danke für die Antwort

    Linus



  • ? Nimm nen CString und geh mit Reverse find einfach mal schnell an die stelle wo das ist... dan knappst de da ab und fertig 😃


Log in to reply