Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

В программировании используется понятие логического файла

Работа добавлена на сайт samzan.net:


Файлы.

В программировании используется понятие логического файла. Под логическим файлом понимается поименованная последовательность компонентов, являющихся объектами одного типа. Количество компонентов, т.е. размер файла, заранее не оговариваются. Компоненты файла не имеют индексов. Количество элементов файла может меняться. В турбопаскале определены следующие файловые типы:

  1. Типизированные файлы – хранят данные заранее объявленного типа;
  2. Текстовые файлы – хранят информацию: числа, символы, строки в кодах ASCII;
  3. Нетипизированные файлы – хранят произвольный набор байт.

Объявит переменную файлового типа можно:

Type
<имя>: file of <тип>;   f = file of integer; //типизированный файл
<имя>: text;          // текстовый файл
<имя>: file;        //нетипизированный файл

Для типизированного файла тип компонентов может быть любой, кроме файлового.

Type
product = record
name: string;
code: word
cost: real;
end;

Var
f1: file of char;
f2: file of integer;
f3: file of product;
f4: file;
f5: text;
begin

End.

Доступ к файлу.
Файлы становятся доступными только при выполнении процедуры открытия файла. Она заключается в связывании заранее объявленной файловой переменной с именем существующего или создаваемого файла, а также в указании направления обмена информацией – чтение или запись.

Assign (<ф.п.>, <имя файла>);

Эта процедура связывает файловую переменную с именем файла на диске. Если файл находится в текущей директории, указываем только имя. Иначе указать полный путь.

Если записывается

Assign(f, ‘ ‘)

то переменная связывается со стандартными файлами – input и output. Input для чтения данных с клавиатуры, output для вывода на экран.

Reset(f) открывает файл для чтения. При выполнении этой процедуры дисковый файл подготавливается к чтению и специальный указатель устанавливается на начало файла.

Rewrite(f) открывает файл для записи. При выполнении этой процедуры старый файл уничтожается и запись информации в файл начинается с первого элемента. Этой процедурой нельзя дополнить существующий файл.

Чтение и запись данных становится возможным только после открытия файла.

Close(f) закрывает логический файл. Закрытие файла гарантирует сохранность файла и полноту заполнения при фатальной ошибке программы.

Удалять или перемещать файлы можно только после их закрытия.

Функция eof(f) возвращает значение true, если достигнут конец файла и false в противном случае.

Write(f, <список ввода>);
Read(f, <список ввода>);

Составить программу, записывающую в файл квадраты ста первых натуральных чисел.

Program p1;
var f: file of integer;
      I, j; integer;

Begin
assign(f, ‘D:\Mydick\myfile.dat’);
rewrite(f);
for I := 1 to 100 do
begin
 j := sqr(i);
 write(f, j);
end;
close(f);
end.

Вывести на экран сформированный файл.

Program p1;
var f: file of integer;
      I, j; integer;

Begin
assign(f, ‘D:\Mydick\myfile.dat’);
{$I-} //директива отключения контроля ошибок ввода-вывода.
reset(f);
{$I+}
for I := 1 to 100 do
  begin
   writeln(I, ‘ = ‘, j);
  end;
 close(f);
end.

Проверка существования файла на диске.

Var f: file of char;
begin
assign(f, ‘myfile.dat’);
{$I-}
reset(f);
{$I+}
if iosresult <> 0 then
begin
 writeln(‘
Файл не существует. ‘);
else
 writeln(‘
Файл существует. ‘);

End;

End.

Функция ioresult возвращает 0, если операция ввода прошла без сбоев.

Написать программу суммирования всех чисел, хранящихся в файле. Числа целые, количество неизвестно.

Program p1;
var f: file of integer;
      s, i: integer;

Begin
assign(f, ‘myfile.dat’);
{$I-}
reset(f);
{$I+}
while not eof(f) do
begin
 read(f, i);
 s := s + I;
end;
writeln(s);
close(f);
end.

Процедура seek(f, <номер компонента>) перемещает указатель к требуемому  компоненту.
seek(f, filesize(f))переместить в конец.

Текстовые файлы.

В текстовых файлах информация хранится в кодах ASCII. Порции информации могут разделяться на строки. При этом строки могут иметь переменную длину.
#13 – конец строки
#10 – переход на следующую строку
#26 – конец файла

Для текстовых файлов есть некоторые функции, которые можно использовать только для текстовых файлов.
eofn – конец строки.
append(f) – открывает текстовый файл для добавления данных в конец файла.
read, readln, write, writeln

Текстовые файлы удобно создавать с помощью простых редакторов, а обрабатывать в программе.

Задание к лабораторной работе:
Выписать из учебника все процедуры и функции по работе с файлами.




1. Work study meet our friends nd reltives tke prt in sport nd music competitions
2. Магістр факультету інноваційних технологій харчування ресторанноготельного і туристичного бізнесу спец
3. по теме Неопределенный интеграл Вариант 1 Найдите интеграл fx22 sin x3exdx используя следующие
4. художник в городе ~ в основе ее сюжета творчество двух художников ~ Василия Калужнина 1890~1967 и Константина
5. СЕВЕРООСЕТИНСКАЯ ГОСУДАРСТВЕННАЯ МЕДИЦИНСКАЯ АКАДЕМИЯ МИНИСТЕРСТВА ЗДРАВООХРАНЕНИЯ И СОЦИАЛЬНОГО РАЗ
6.  теоретические основы кадовой стратегии банка и ее особенности в современной россии
7. Особенности расследования преступлений, связанных со взрывом
8. Реформы Александра Второго
9. Единый социальный налог - правовой аспект
10. Этапы десталинизации в СССР
11. по теме- Страхование инвестиций от политических рисков Исполнитель- магистран
12. Конспект лекцій Лекція 12
13. Возможные проблемы ребенка- нарушение дыхания; резкая нестерпимая боль в ухе; нарушение сна;
14. Теория вероятностей1
15. тематики и физики п-п Ф
16. Проблема места работы с учебной книгой как метода обучения школьников в современной педагогике
17. У разі службового відрядження 2При переїзді на роботу в іншу місцевість 3При роботах у польових умовах
18. Разработка и применение пакетов прикладных программ
19. Все средневековые города Жетысу располагались в основном- на местах зимовок Bу подножий гор Cвдоль л
20. 1 Сущность виды и назначение бухгалтерской финансовой отчетности