2. Текстові файли призначені для
зберігання символів
Дляопису текстової файлової
змінної використовується тип Text.
Наприклад, var f : Text ;
Дляроботи з текстовими файлами
існують процедури і функції.
Розглянемо їх на прикладах.
Гресько Л.І. ліцей 142
3. Приклад 1
Створення текстового файлу і запис 10 чисел
Var f : text ; a, i : integer ;
begin
Assign(f, ‘ab.pas’) ; {-встановити зв’язок між
{-
файловою змінною f і фізичним файлом ab.pas}
Rewrite (f) ; { -відкрити файл для запису}
Writeln( ‘введіть числа’) ;
For i :=1 to 10 do
begin
Readln (a); { -введення числа з клавіатури}
write (f, a : 2) ; { - запис числа у файл }
End ;
Close (f) {- закрити файл}
Еnd.
Гресько Л.І. ліцей 142
4. Зауваження
Числа, які вводяться у файл , зручно
утворювати за допомогою команди
присвоювання, наприклад:
For i:=1 to n do begin
a:=i+1; Write( f, a:2) end;
aбо утворювати їх випадковим чином:
For i:=1 to n do begin
a:=random(10); Write( f, a:5) end;
Гресько Л.І. ліцей 142
5. Приклад 2
Прочитати два числа із текстового файлу
Var f : text ; a, b : integer;
begin
Assign(f, ‘ab.pas’) ;
Reset (f) ; { - відкрити файл для
читання }
Read (f, a); { - читання 1-го числа }
Read (f, b); { - читання 2-го числа }
Writeln( a:3, b:3) { -виведення чисел на
екран}
Close (f)
end. Гресько Л.І. ліцей 142
6. Увага!
Файл в програмі можна відкривати
процедурою Reset або Append
багато разів.
Процедура Rewrite очистить
існуючий файл.
В кінці програми обов’язково
потрібно закрити файл процедурою
Close(f).
Гресько Л.І. ліцей 142
7. Приклад 3
Прочитати шосте з початку файла число і
записати його в кінець файла
Var f : text ; a, i : integer;
begin
Assign(f, ‘ab.pas’ ) ;
Reset (f) ; { -відкрити файл для читання}
читання
For i :=1 to 6 do Readln (f, a) ;
writeln ( a) ;
Append (f) ; { -встановити покажчик на
кінець файла}
Write (f, a) ; { - запис числа у файл }
Close (f)
end.
Гресько Л.І. ліцей 142
8. Увага!
Слід пам’ятати:
- якщо пишемо дані в файл командою
Writeln, то і читаємо дані із файла
командою Readln;
- якщо пишемо дані командою Write,
то і читаємо дані із файла командою
Read.
Гресько Л.І. ліцей 142
9. Приклад 4
Знайти суму чисел у файлі, кількість елементів не
задана( фрагмент програми).
.............
S:=0;
Reset (f) ; { -відкрити файл для читання }
While not eof (f) do {-поки не кінець файла}
begin
read ( f, a ) ; { - читання числа із файла }
Write (a : 2) ; { -виведення числа на екран
}
S:=s+a ;
End ;
write (‘сума чисел=’ , s ) ;
.............
Гресько Л.І. ліцей 142
10. Приклад 4
Знайти суму чисел у файлі, кількість елементів не
задана( фрагмент програми).
.............
S:=0;
Reset (f) ; { -відкрити файл для читання }
While not eof (f) do {-поки не кінець файла}
begin
read ( f, a ) ; { - читання числа із файла }
Write (a : 2) ; { -виведення числа на екран
}
S:=s+a ;
End ;
write (‘сума чисел=’ , s ) ;
.............
Гресько Л.І. ліцей 142