• Что бы вступить в ряды "Принятый кодер" Вам нужно:
    Написать 10 полезных сообщений или тем и Получить 10 симпатий.
    Для того кто не хочет терять время,может пожертвовать средства для поддержки сервеса, и вступить в ряды VIP на месяц, дополнительная информация в лс.

  • Пользаватели которые будут спамить, уходят в бан без предупреждения. Спам сообщения определяется администрацией и модератором.

  • Гость, Что бы Вы хотели увидеть на нашем Форуме? Изложить свои идеи и пожелания по улучшению форума Вы можете поделиться с нами здесь. ----> Перейдите сюда
  • Все пользователи не прошедшие проверку электронной почты будут заблокированы. Все вопросы с разблокировкой обращайтесь по адресу электронной почте : info@guardianelinks.com . Не пришло сообщение о проверке или о сбросе также сообщите нам.

Копирование Текстовых Файлов

Lomanu4 Оффлайн

Lomanu4

Команда форума
Администратор
Регистрация
1 Мар 2015
Сообщения
1,481
Баллы
155
Копирование текстовых файлов с помощью средств языка Pascal реализовать достаточно просто. Копируемый файл открывается в режиме чтения (reset), а планируемая копия – в режиме записи (rewrite). И пока не будет достигнут конец первого файла (eof), считывать данные из одного и записывать их в другой. По окончании следует закрыть оба файла (close).

Программа на языке Паскаль:
Код:
var
    f1, f2: text;
    s: string;
begin
    assign (f1, 'c:\file1.txt');
    reset (f1);
    assign (f2, 'c:\file2.txt');
    rewrite (f2);
    while not eof (f1) do begin
        readln (f1, s);
        writeln (f2, s)
    end;
    close (f1);
    close (f2);
end.
Задачу можно усложнить, добавив возможность пользователю самостоятельно указывать адресное имя файл. Также в программу желательно добавить программный контроль наличия файла, отключив стандартную проверку операций ввода-вывода. Это делается для избегания нежелательных сообщений об ошибках при отсутствии указанного файла.
Код:
var
    f1, f2: text;
    s: string;
    name1, name2: string;
    err: boolean;
begin
    err := true;
    while err = true do begin
        write ('File name: ');
        readln (name1);
        assign (f1, name1);
        {$I-}
        reset (f1);
        {$I+}
        if IOResult = 0 then
            err := false;
    end;
    write ('File name of copy: ');
    readln (name2);
    assign (f2, name2);
    rewrite (f2);
    while not eof (f1) do begin
        readln (f1, s);
        writeln (f2, s)
    end;
    close (f1);
    close (f2);
end.
 
Вверх Снизу