ثلاث طرق لتنفيذ نسخة الملف في دلفي
1. استدعاء وظيفة API
PROcedure CopyFile(FromFileName,ToFileName:string);
فار
f1,f2:ملف;
يبدأ
AssignFile(f1,FromFileName); file:// يحدد اسم الملف المصدر
AssignFile(f2,ToFileName); file:// يحدد اسم الملف الهدف
إعادة تعيين(f1);
يحاول
إعادة كتابة(f2);
يحاول
إذا كان Lzcopy(TfileRec(f1).handle,TfileRec(f2).Handle)<0
ثم
رفع EinoutError.creat('خطأ في نسخ الملف')
أخيراً
CloseFile(f2);
نهاية؛
أخيراً
حتى الطول (الخط)<=0;
نهاية؛
نهاية؛
2. دفق الملف
ملف نسخ الإجراء؛
فار f1,f2: tfilestream;
يبدأ
f1:=Tfilestream.Create(sourcefilename,fmopenread);
يحاول
f2:=Tfilestream.Create(targetfilename,fmopenwrite or fmcreate);
يحاول
f2.CopyFrom(f1,f1.size);
أخيراً
f2.Free;
نهاية؛
أخيراً
f1.Free;
نهاية؛
نهاية؛
3. التنفيذ باستخدام كتل الذاكرة لقراءة وكتابة المخازن المؤقتة
Procudure FileCopy(const Fromfile,Tofile:string);
فار
F1، F2: ملف؛
قراءة رقمية، كتابة رقمية: كلمة؛
Buf: صفيف [1..2048] من char؛
يبدأ
AssignFile(F1,Fromfile);
إعادة تعيين (F1،1)؛
AssignFile(F2,Tofile);
إعادة كتابة(F2,1);
يكرر
BlockRead(F1,buf,sizeof(buf),NumRead);
BlockWrite(F2,buf,Numread,NumWritten);
حتى (NumRead=0) أو (NumWritten<>NumRead);
CloseFile(F1);
CloseFile(F2);
نهاية؛