Delphi. Учимся на примерах
Шрифт:
type TForm1 = class(TForm)
from: TEdit;
where: TEdit;
Button1: TButton;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Button2: TButton;
Button3: TButton;
Open1: TOpenDialog;
Save1: TSaveDialog;
Button4: TButton;
del: TEdit;
Button5: TButton;
Button6: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure Button4Click(Sender: TObject);
procedure Button6Click(Sender: TObject);
private
{ Private declarations }
procedure doit; //объявление процедуры doit
public
{ Public declarations }
end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure Tform1.doit;
var
f1, f2: file of byte; //работа с первым и вторым файлом
сор: byte; //для побайтового копирования
sizez: longint; //хранит размер файла
begin
{I-} {отключаем директиву, которая следит за ошибками ввода/вывода}
try
//связываем Файловую переменную f1 с первым файлом
AssignFile(f1, from.Text);
//связываем файловую переменную f2 со вторым файлом
AssignFile(f2, where.Text);
Reset(f1); //открываем первый файл на чтение
sizez:= Trunc(FileSize(f1)); //узнаем размер файла
//Отображаем размер файл для пользователя}
Label4.Caption:= IntToStr(sizez div 1024) + 'Кб’;
{Создаем второй файл или перезаписываем его, если он уже существует}
Rewrite(f2);
while not Eof(f1) do begin //пока не достигнут конец первого файла
//считываем один байт с первого файла
BlockRead(f1, cop, 1);
//записываем один байт во второй файл
BlockWrite(f2, cop, 1);
end;
CloseFile(f1);//закрываем первый файл
CloseFile(f2);// закрываем второй файл
finally;
end;
if IOResult <> 0 //Если возникла ошибка ввода-вывода
then MessageDlg('Ошибка при копировании файла!', mtError, [mbOk] , 0) //сообщение об ошибке
else begin
{если ошибок не было, то выводим окно об успешном окончании копирования}
ShowMessage('Успешно скопировано!');
end;
end;
procedure TForm1.ButtonlClick(Sender: TObject);
begin
doit;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if Open1.Execute then from.Text := Open1.FileName
else ShowMessage('Файл не был открыт');
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if Save1.Execute then where.Text:= Save1.FileName
else ShowMessage(''Вы не выбрали место для сохранения файла!');
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
doit;
DeleteFile(from.Text); //удаляем исходный файл
end;
procedure TForm1.Button4Click(Sender: TObject);
begin
if Open1.Execute then del.Text:= Open1.FileName
else ShowMessage('Файл не был выбран');
end;
procedure TForm1.Button6Click(Sender: TObject);
begin
DeleteFile(del.Text); //удаляем файл
if not FileExists(del.Text)
then //проверяем существование файла
//выводим сообщение об успешном удалении
ShowMessage('Файл удален!');
end;
end.
⊚ Все файлы проекта и исполняемый файл рассмотренной программы находятся на прилагаемом к книге компакт-диске в папке Chapter_02.
Поделиться:
Популярные книги
Наследник
3. Династия
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Стражи душ
4. Артефактор
Фантастика:
городское фэнтези
попаданцы
аниме
5.00
рейтинг книги
Боярышня Дуняша 2
2. Боярышня
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Я спас СССР! том 2
2. Я спас СССР
Фантастика:
альтернативная история
5.62
рейтинг книги
Черный Маг Императора 11
11. Черный маг императора
Фантастика:
юмористическое фэнтези
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Разбуди меня
7. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
остросюжетные любовные романы
5.00
рейтинг книги
Мастер 2
2. Мастер
Фантастика:
фэнтези
городское фэнтези
попаданцы
технофэнтези
4.50
рейтинг книги
Ученик. Книга 4
4. Ученик
Фантастика:
фэнтези
5.67
рейтинг книги
Твое сердце будет разбито. Книга 1
Любовные романы:
современные любовные романы
5.50
рейтинг книги
Я до сих пор князь. Книга XXII
22. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Анти-Ксенонская Инициатива
7. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
космоопера
5.00
рейтинг книги
Наномашины, наследник! Том 9
9. Первый среди карапузов
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Адвокат
1. Бандитский Петербург
Детективы:
боевики
8.00
рейтинг книги
Вечный. Книга I
1. Вечный
Фантастика:
боевая фантастика
попаданцы
рпг
5.00