Program Vytvoreni_obsahu_adresaru_v_html;
uses crt, dos;
var cc,c1:string;
celkemC,celkemAdr,velikostC,pocet_souboru:longint;
i:integer;
procedure hledani(var cesta:string);
var cotoje,zaloh:string;
attr:byte;
jmenovka, adresar, soubor, skryty:boolean;
celkem,velikost,celkemA:longint;
SR1:searchrec;
f:text;
begin
velikost:=0;celkem:=0;celkemA:=0;
FindFirst(cesta+'\*.*', AnyFile, SR1);
assign(f,cesta+'\index.htm');
pocet_souboru:=pocet_souboru+1;
rewrite(f);
writeln(f,'<HTML><HEAD><TITLE>Obsah slozky '+cesta+'</TITLE></HEAD><BODY>');
writeln(f,'<i>Vypis adresare </i><b>'+cesta+'</b><br>');
if c1<>cesta then writeln(f,'<A HREF="..\index.htm">zpet</A><br>');
writeln(f,'<br>');
repeat
adresar:=false; soubor:=false; skryty:=false; jmenovka:=false;
attr:=SR1.attr;
if (attr and 16)=16 then begin adresar:=true; end else soubor:=true;
if (attr and 8)=8 then begin jmenovka:=true; soubor:=false; end;
if (attr and 2)=2 then begin skryty:=true; end;
if soubor then velikost:=velikost + SR1.size;
if soubor then celkem:=celkem+1;
{ if ((SR1.name<>'.') and (SR1.name<>'..')) then Write(SR1.name:15,' -->>');}
if ((SR1.name<>'.') and (SR1.name<>'..') and adresar) then celkemA:=celkemA+1;
{ if jmenovka then write('Jmenovka disku':16);
if soubor then write('Soubor':16);
if adresar then write('Adresar':16);
if skryty then write(', skryty');
write(', ',SR1.size);
writeln;}
if soubor then begin
Write(f,'<i>soubor <A HREF="',SR1.name,'">',SR1.name,'</A></i>');
write(f,'<br>');
end;
if ((adresar) and (SR1.name<>'.') and (SR1.name<>'..')) then begin
write(f,'ADRESAR <b><A HREF="',SR1.name,'/index.htm">',SR1.name,'</A></b>');
write(f,'<br>');
zaloh:=cesta;
cesta:=cesta+'\'+sr1.name;
{ writeln('Zmena do adresare: ',cesta);}
celkemAdr:=celkemAdr+1;
hledani(cesta);
{ writeln('Zpet v adresari ',zaloh);}
cesta:=zaloh;
end;
findnext(SR1);
until doserror<>0;
writeln(f,'<br><i>Souboru celkem: ',celkem,'<br>Adresaru celkem: ',celkemA,'<br>');
writeln(f,'</BODY></HTML>');
close(f);
celkemC:=celkemC+celkem;
velikostC:=velikostC+velikost;
{writeln('velikost celeho adresare: ', velikost, ' B');
writeln('celkem souboru: ',celkem);}
end;
begin
clrscr;
celkemC:=0; celkemAdr:=0; velikostC:=0; pocet_souboru:=0;
cc:='D:'; for i := 1 to Length(cc) do cc[i] := UpCase(cc[i]);
Writeln('Vypis ',cc,' do souboru typu HTML');
c1:=cc;
hledani(cc);
Writeln('velikost celeho adresare (i s vnorenymi): ',velikostC,' B');
Writeln('celkem souboru (i s vnorenymi adresari): ',celkemC);
Writeln('celkem adresaru (i s vnorenymi): ',celkemAdr);
Writeln('Celkem bylo vytvoreno ',pocet_souboru,' souboru Index.htm');
end.
Zpět