procedure
TForm1.Button2Click(Sender: TObject);
var Source,Destination :File;
NumRead, NumWritten :Integer;
Buf :array[1..2048] of Char;
begin
if OpenDialog1.Execute then
begin
AssignFile(Source,OpenDialog1.FileName); //Associe
la variable Source au fichier (Edit1.Text)
Reset(Source,1); //Ouvre le fichier
sans le modifier avec une taille d'enregistrement de 1 octet
if SaveDialog1.Execute then
begin
AssignFile(Destination,SaveDialog1.FileName); //Associe
la variable Destination au fichier (Edit2.Text)
ReWrite(Destination,1); //Crée
puis ouvre un nouveau fichier (Destination) avec une taille
d'enregistrement de 1 octet
repeat //Repeter...
BlockRead(Source, Buf, SizeOf(Buf), NumRead); //Lit
un ou plusieurs enregistrements d'un fichier ouvert et les
place dans une variable
BlockWrite(Destination, Buf, NumRead, NumWritten); //Ecrit
un ou plusieurs enregistrements d'une variable mémoire
dans un fichier ouvert
until //...Jusqu'à
(NumRead = 0) or (NumWritten <> NumRead); //ce
que NumRead=0 ou que NumWritten soit différent de
NumRead
CloseFile(Destination); //Ferme l'association
entre la variable Destination et le fichier (Edit2.Text)
end;
CloseFile(Source); //Ferme l'association
entre la variable Source et le fichier (Edit1.Text)
ShowMessage('La copie a été effectué');
//Message indiquant que la copie est terminé
end;
end;
|