ТОР 5 статей: Методические подходы к анализу финансового состояния предприятия Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века Характеристика шлифовальных кругов и ее маркировка Служебные части речи. Предлог. Союз. Частицы КАТЕГОРИИ:
|
Занятие 4. Процедуры и функции работы с файлами. Решение задачИзменение имени файла производится процедурой rename(МуFilе, FileName); первый аргумент которой – переменная файлового типа, а второй аргумент – строкового типа – новое имя файла, которое может быть сокращенным или полным (с указанием пути). Действие этой процедуры эквивалентно действию аналогичной процедуры DOS. Уничтожение части файла от текущего положения до конца производится процедурой truncate(МуFilе). Уничтожение всего файла производится процедурой erase(МуFilе), действие которой эквивалентно удалению файла в операционной системе DOS. Примечание. Физические файлы на магнитных дисках и переменные файлового типа в программе на Паскале – объекты различные. Переменные файлового типа в Паскале соответствуют не только физическим файлам, но и логическим устройствам, связанным с вводом и выводом информации. Клавиатуре и экрану дисплея соответствуют файлы со стандартными именами Input и Output. Задание. Рассмотрите предложенный ниже текст программы. Сформулируйте решенную задачу. Создайте расширенный вариант подобной задачи. результат покажите учителю для оценки. Program Files; Uses Crt; Var F,Fnew: file of string; Name,NewName: string[12]; Text: string; Ch: char;
Procedure ReadText; Begin repeat write('Введите имя файла>'); readln(Name); assign(F,Name); reset(F); if IOresult<>0 then begin writeln('Ошибка чтения'); close(F); end; until IOresult=0; writeln('Содержание файла ',Name,':'); while not Eof(F) do begin readln(F,Tеxt); writeln(Tеxt); end; close(F); End;
Procedure EraseFile; Begin erase(F); writeln('Файл удален'); End;
Procedure ReNameFile; Begin write('Введите новое имя файла:'); readln(NewName); rename(F,NewName); writeln('Файл ',Name,' переименован в файл ',NewName); End;
Procedure CopyFile; Begin write('Введите имя копии файла ',Name,'>'); readln(NewName); reset(F); assign(Fnew,NewName); rewrite(Fnew); while not Eof(f) do begin readln(F,Text); writeln(Fnew,Text); end; close(F); close(F_new); writeln('Файл',Name,' скопирован в файл ',NewName); End;
Begin ClrScr; readTеxt; repeat writeln('Удаление файла (D),переименование файла(R)'); writeln('Копирование файла (C), выход из программы (Е)'); write('Введите символ нужной операции - '); readln(ch); case ch of 'D','d': EraseFile; 'R','r': ReNameFile; 'C','c': CopyFile; end; until (ch='E') or (ch='e'); read; End. Не нашли, что искали? Воспользуйтесь поиском:
|