CopyFile/ru
English · Français · Suomi · Русский
Модуль: Lazarus fileutil (UTF-8 замена для кода FPC RTL и дополнительная обработка файлов/каталогов)
// флаги для копирования
type
TCopyFileFlag = (
cffOverwriteFile,
cffCreateDestDirectory,
cffPreserveTime
);
TCopyFileFlags = set of TCopyFileFlag;
function CopyFile(const SrcFilename, DestFilename: string): boolean;
function CopyFile(const SrcFilename, DestFilename: string; PreserveTime: boolean): boolean;
function CopyFile(const SrcFilename, DestFilename: string; Flags: TCopyFileFlags=[cffOverwriteFile]): boolean;copyfile копирует файл из места SrcFilename в место DestFilename. При желании можно сохранить метку времени файла (флаг cffPreserveTime).
Windows example
Пример:
uses
...
fileutil
...
CopyFile('c:\autoexec.bat','c:\windows\temp\autoexec.bat.backup');Результат работы функции - вернёт True при успешном копировании и False в противном случае.
Note: Если вы хотите использовать данную функцию в консольных программах, вам необходимо добавить модуль LazUtils, который не будет тянуть за собой весь пакет LCL
Lazarus example
В этом примере используются следующие компоненты или функции:
procedure TForm1.Button1Click(Sender: TObject);
var
ok:boolean;
begin
ok := false;
if OpenDialog1.Execute then
if SaveDialog1.Execute then
ok := CopyFile(OpenDialog1.FileName, SaveDialog1.FileName);
if ok then MessageDlg('Файл '+OpenDialog1.FileName+' успешно скопирован в ' +
SaveDialog1.FileName,mtInformation,[mbOk],0)
else MessageDlg('Копирование не удалось',mtWarning,[mbOk],0);
end;From the Free Pascal wiki, page "CopyFile/ru", as it stood on 2021-07-26 after a change by Zoltanleo, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's Licensing page. If you have concerns about this material, message the admin.

