[ AnaBaki @ 17.01.2008. 14:34 ] @
Imam mali problem sa pravljenjem liste pesama
Kako i na koji nacin odraditi programce da skenira folder sa muzikom
sa svim podfolderima i da sastavi spisak u .txt ili .doc ili .xls
sledeceg oblika, na primer

ABBA
1973 Ring ring
Another town
...
1974 Waterloo
spisak pesama
Sledeci album
spisak pesama

Tj.

FOLDER
pesme
PODFOLDER
pesme
PODFOLDER
pesme

a da nema ogranicenja za broj pesama u folderu ili broj podfoldera u folderu

Valjda sam bio jasan.

Pozdrav
[ mulaz @ 17.01.2008. 15:39 ] @
na linuxu je to `ls -1R`
mozes da instaliras cygwin, i dobijes te komande :)
a sigurno postoji i laksi nacin, ali bolje ista nego nista :)
[ savkic @ 17.01.2008. 16:34 ] @
Sledeća funkcija daje listu svih dirova i fajlova.

Code:

procedure TraversePath(ADir: string; AFiles: TStrings);
var
  lpFindFileData: TWIN32FindData;
  FileName: string;
  hFindFile: THandle;
begin
  ADir := IncludeTrailingPathDelimiter(ADir);

  hFindFile := FindFirstFile(PChar(ADir + '*'), lpFindFileData);
  if hFindFile <> INVALID_HANDLE_VALUE then
  repeat
    FileName := lpFindFileData.cFileName;

    if lpFindFileData.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY = 0 then
      AFiles.Add(ADir + FileName)
    else begin
      if (FileName <> '.') and (FileName <> '..') then
        TraversePath(ADir + FileName, AFiles);
    end;
  until not Windows.FindNextFile(hFindFile, lpFindFileData);

  Windows.FindClose(hFindFile);
end;


Ako postaviš jedan Memo na formu možeš videti kako radi sa TraversePath('C:\Tmp', Memo1.Lines);

To što tebi treba možeš iskombinovati iz dva dela, prvo da dobiješ listu svih dirova u datoj putanji a potom ideš kroz listu dirova i pronalaziš fajlove koji odgovaraju datoj masci (npr. '*.mp3')
[ AnaBaki @ 26.01.2008. 09:26 ] @
Pronadjoh nesto sto zadovoljava neke moje kriterijume.
napisano je za Delphi 6, a dozvoljava se promena koda
za licnu upotrebu.

Pogledati na http://codecentral.borland.com/Item/20163
Valjda sam smeo da stavim link?
Ako ne sme neka ga moderatori uklone
Pozdrav