zaptxt.PAS

{* Запись данных в текстовый файл *}

Unit ZAPTXT;
Interface
Implementation
Begin
 writeln('Запись данных в текстовый файл');
End.

Program pas0;

Uses zaptxt.pas; {* Эту строку можно удалить *}
Var {* Объявление переменных *}
  f_in     : text;
  f_out    : File;
  name_in  : String;
  name_out : String;
  buffer   : Array[1..8] Of integer;
  i        : integer;
  k        : integer;
Begin
  write('Входной файл: ');
  readln(name_in);
  assign(f_in, name_in); {* Подключение к файлу name_in через переменную f_in *}
  reset(f_in); {* Чтение из файла через переменную f_in *}
  If IOResult  0 Then
  Begin
    writeln ('Файл не найден!');
    exit
  End;
  write('Выходной файл: ');
  readln(name_out);
  assign(f_out, name_out); {* Связывание f_out с файлом name_out *}
  rewrite(f_out, sizeof(integer) * 8); {$I+}
  i := 0;
  While Not eof(f_in) Do {* Проверяем, не достигнут ли конец файла *}
  Begin
    inc(i); {* Прибавим к i единицу *}
    read(f_in, buffer[i]);
    If i = 8 Then
    Begin
      blockwrite(f_out, buffer, 1);
      i := 0
    End;
    
  End;
  If i  0 Then
  Begin
    For k := i + 1 To 8 Do
      buffer[k] := 0;
    blockwrite(f_out, buffer, 1);
  End;
  close(f_in); {* Закрыть файл f_in *}
  close(f_out); {* Закрыть файл f_out *}
  readln
End.