Avatar billede kalle_r Nybegynder
02. maj 2001 - 14:04 Der er 13 kommentarer og
1 løsning

Hente Filenavn ud í en streng

Jeg har brug for at kunne \"hente\" alle filnavne fra en folder ud i strenge, så jeg kan sortere og åbne nogle bestemte filer.

Hvordan gør jeg lettest det ?? (Jeg er meget ny i C++ !!!)
Avatar billede borrisholt Novice
02. maj 2001 - 14:05 #1
Hvilken compiler bruger du ?
Avatar billede kalle_r Nybegynder
02. maj 2001 - 14:07 #2
MS Visual Studio 6.0
Avatar billede snepnet Nybegynder
02. maj 2001 - 23:40 #3
void FindFiles(LPCTSTR starti)
{
  CFileFind finder;
  CString FullPath(\"\");
  CString wildCard(_T(\"\\\\*.*\"));
  CString searchString=starti+wildCard;
  BOOL FindFiles = finder.FindFile(searchString);
    while (FindFiles){
      FindFiles=finder.FindNextFile();
      if (finder.IsDots())
    continue;

if (finder.IsDirectory()){
            CString str(finder.GetFilePath());
            CVideoDlg::FindFiles(str);
        }
           
       
        if (!(FullPath=finder.GetFilePath())){
            AfxMessageBox(\"No files found\");
        }
        else
            if (FullPath.Right(5)==\".mpeg\" || FullPath.Right(4)==\".mpg\" || FullPath.Right(4)==\".avi\"){
                m_cVideoListe.AddString(FullPath);
        }
    }
    finder.Close();
    UpdateData();

}
Avatar billede snepnet Nybegynder
02. maj 2001 - 23:41 #4
for hulen da også... det var bestemt ikke meningen at jeg skulle have trykket udfør der... jeg prøver lige igen.
Avatar billede borrisholt Novice
02. maj 2001 - 23:42 #5
jeppejeppe  >> Det virker ja. Men måske det varbedere at sktive noger ren win32 kode til en nybegynner ...

MFC kræver jo at man ved hvordan man sætter sin compiler op etc...

Jens B
Avatar billede snepnet Nybegynder
02. maj 2001 - 23:47 #6
CComboBox m_cVideoListe;

void FindFiles(LPCTSTR starti)
{
  CFileFind finder;
  CString FullPath(\"\");
  CString wildCard(_T(\"\\\\*.*\"));
  CString searchString=starti+wildCard;
  BOOL FindFiles = finder.FindFile(searchString);
    while (FindFiles){
      FindFiles=finder.FindNextFile();
      if (finder.IsDots())
        continue;

      if (finder.IsDirectory()){
        CString str(finder.GetFilePath());
        FindFiles(str);
      }
           
      if (!(FullPath=finder.GetFilePath())){
            AfxMessageBox(\"No files found\");
      }
     
      else
        if (FullPath.Right(5)==\".mpeg\" ||
            FullPath.Right(4)==\".mpg\" ||
            FullPath.Right(4)==\".avi\"){
            m_cVideoListe.AddString(FullPath);
        }
    }
    finder.Close();
    UpdateData();
}

det står lidt gnidret, men funktionen gør det, at den søger alle filer med de skrevne extensions. funktion starter med at søge i starti (som så skal være en sti til et katalog, eller bare et disknavn som f.eks. C:\\\\).

den fulde sti til filerne bliver proppet direkte i comboboxen (hvor man så kan vælge imellem dem)
Avatar billede snepnet Nybegynder
02. maj 2001 - 23:51 #7
det er da ikke nødvendigt at sætte compileren op (med mindre jeg misforstår hvad du mener), men jeg kan da godt se hvad du mener med at det måske ikke lige er det fikseste med MFC... tænkte jeg ikke lige over.
Avatar billede snepnet Nybegynder
02. maj 2001 - 23:57 #8
desuden er det da også hurtigere at få lavet sig et lille windows-program hvis man bruger MFC... så kan han jo få et rigtigt vindue op og køre inden man kan nå at sige \"IB\".
Avatar billede borrisholt Novice
02. maj 2001 - 23:59 #9
jo jo .. Hvis det var en parameter så skulle han jo bruge C++ Builder ....

Jens B
Avatar billede snepnet Nybegynder
03. maj 2001 - 00:00 #10
fattede jeg ikke lige.. mener du hvis det var en parameter at han hurtigt kunne få et vindue op og køre ? (og hvorfor skulle det være lettere i C++ builder ?)
Avatar billede borrisholt Novice
03. maj 2001 - 00:04 #11
Yepper. Hvis du vil have et vindue op og køre i C++ Builder. Så lukker du din compiler op og trykker på kør. Så har du et vindue i luften. På samme måde som i Delphi og VB.

Jens B
Avatar billede snepnet Nybegynder
03. maj 2001 - 00:11 #12
nå.... men nu har han jo så Visual Studio, og der bliver han så nødt til at oprette et projekt inden han trykker på kør :)
Avatar billede kalle_r Nybegynder
03. maj 2001 - 14:11 #13
Nu er det godt nok en Win32 app. jeg har kastet mig over. Er der også hjælp at hente til denne form hos jer ??? Den anden form har jeg ikke erfaring nok med endnu. Sorry....
Avatar billede rasmusneckelmann Nybegynder
09. maj 2001 - 00:08 #14
Hvis du ik gider MFC, kan pure Win32 gøre det samme med FindFirstFile/FindNextFile. Slå \"FindFirstFile\" op i MSDN, og det hele skulle blive serveret.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester