uputstva
registracija rs domena

Kreiranje stabla direktorijuma, Delphi

17.06.2010, 15:27
Postoji više načina za kreiranje direktorijuma, pa i čitavog stabla direktorijuma (direktorijum sa pripadajućim poddirektorijumima), a u ovom prilogu prikazaćemo vam jednu proceduru koja vam može pojednostaviti posao.

U ovom prilogu ćemo videti kako da kreiramo celo stablo direktorijuma, odnosno kako da kreiramo recimo direktorijum “C:\Prvi\Drugi\Treci” (znači direktorijum Treci), kad direktorijumi “Prvi” i “Drugi” ne postoje.

procedure KreirajDir(Dir: String);
function Prethodni(Sta: String; Gde: String): Integer;
var
Ind : Integer;

begin
Result := 0;

for Ind := (Length(Gde)-Length(Sta)+1) downto 1 do
if Copy(Gde, Ind, Length(Sta)) = Sta then
begin
Result := Ind;
Break;
end;
end;

var
PrethodniDir : String;
Ind : Integer;

begin
if Copy(Dir,2,1) <> ‘:’ then
if Copy(Dir,3,1) <> ‘\’ then
if Copy(Dir,1,1) = ‘\’ then
Dir := ‘C:’+Dir
else
Dir := ‘C:\’+Dir
else
Dir := ‘C:’+Dir;

if not DirectoryExists(Dir) then
begin
// ukoliko direktorijum ne postoji,
// pronadji naziv prethodnog

Ind := Prethodni(’\', Dir);
// pozicija prethodnog ‘\’
PrethodniDir := Copy(Dir, 1, Ind-1);
// prethodni direktorijum

// ukoliko prethodni dir. ne postoji,
// propusta se rekurzivno kroz proceduru…
if not DirectoryExists(PrethodniDir) then
KreirajDir(PrethodniDir);

// u ovoj tacki prethodni dir. mora da postoji.
// Tako da ce se kreirati direktorijum u “Dir”varijabli.
CreateDir(Dir);
end;
end;

Kako se koristi ova procedura, pa jednostavno je negde u kodu pozovemo sa:

KreirajDir(’\Prvi\Drugi\Treci’);

Kada se pozove procedura, ispituje se string varijabla stabla direktorijuma, a zatim se na početak dodaje “C:\”. Potom se ispituje da li uopšte postoji takav direktorijum na disku, ako postoji procedura dolazi do kraja, a ako ne postoji prolazi se kroz stablo direktorijuma sve do korenog, kada se kreira prvi, pa potom i ostali, sve do poslednjeg i to rekurzivno.
Postavio clan: Uputstvo_84
Podeli na Facebooku Podeli sa prijateljima na facebook-u

Komentari

Trenutno nema komentara, komentarisite clanak pomocu forme koja se nalazi ispod

Da bi ste mogli da komentarisete clanke morate se registrovati


Obavestenje: Komentari nisu zvanicni stavovi ovog sajta već subjektivna mišljenja. Sajt Uputstva.rs nije odgovoran za stavove koji su iznešeni u komentarima i oni su vlasništvo njihovih autora.

daftar situs togel online situs togel online situs togel online togel macau oryornoi.com naturalmarkeet.com mgjakartaselatan.id togel slot jaigurudevashrammathura electrokwt agen togel online toto togel bo toto togel online bo toto togel online slot88 gacor agen toto togel