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.
Поделиться:
Популярные книги
Отморозок 5
5. Отморозок
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Лекарь Империи 4
4. Лекарь Империи
Фантастика:
городское фэнтези
аниме
попаданцы
5.00
рейтинг книги
Надуй щеки!
1. Чеболь за партой
Фантастика:
попаданцы
дорама
5.00
рейтинг книги
Спокойный Ваня 2
2. Спокойный Ваня
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Егерь Ладов
3. Кровь и лёд
Фантастика:
боевая фантастика
аниме
фэнтези
5.00
рейтинг книги
Камень. Книга 3
3. Камень
Фантастика:
фэнтези
боевая фантастика
8.58
рейтинг книги
Император Пограничья 10
10. Император Пограничья
Фантастика:
городское фэнтези
аниме
фантастика: прочее
попаданцы
5.00
рейтинг книги
Неучтенный элемент. Том 2
2. Антимаг. Вне системы
Фантастика:
городское фэнтези
фэнтези
5.00
рейтинг книги
Искатель 5
5. Валинор
Фантастика:
рпг
фэнтези
попаданцы
5.00
рейтинг книги
Император Пограничья 7
7. Император Пограничья
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Золотой ворон
5. Все ради игры
Фантастика:
зарубежная фантастика
5.00
рейтинг книги
Корсар
Вселенная EVE Online
Фантастика:
боевая фантастика
космическая фантастика
6.29
рейтинг книги
Тринадцатый IX
9. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
сказочная фантастика
5.00
рейтинг книги
Антимаг
1. Антимаг
Фантастика:
фэнтези
6.95