Текстовые файлы
Объявление текстовых файлов
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Стандартные процедуры для работы с текстовыми файлами
Создание текстового файла 1 способ
Создание текстового файла 1 способ
Создание текстового файла 2 способ
Чтение из текстового файла 1 способ
Чтение из текстового файла 1 способ
Чтение из текстового файла 2 способ
Использование объекта Mainmenu
Использование объекта Mainmenu
Использование объекта Mainmenu
Конструктор объекта Mainmenu
Использование объекта Mainmenu
Форма с объектом Mainmenu
Обработчики событий клика на пункты меню объекта Mainmenu
464.55K
Категория: ПрограммированиеПрограммирование

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

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

1

2. Объявление текстовых файлов

Текстовый файл – совокупность строк
переменной длины, хранящаяся на диске.
Доступ к каждой строке осуществляется
последовательно, начиная с первой. Возможен
доступ к символам, записанным в файл.
Нельзя говорить о длине текстового файла
(числе компонент в нем), так как в текстовом
файле компонентой может быть символ, а может
строка.
Var
t: textfile;
2

3. Стандартные процедуры для работы с текстовыми файлами

Процедура read (имя файловой переменной, список ввода);
Список ввода – последовательность переменных типа char или string
через запятую.
Процедура read используется для чтения из файла. Ранее должны быть
выполнены процедуры assignfile и reset. В текстовом файле могут быть
записаны: символы, строки (в том числе и числа integer или real). При
выполнении процедуры read указатель автоматически смещается на число
считанных компонент и указывает на КОМПОНЕНТУ, КОТОРАЯ
СЧИТАЕТСЯ СЛЕДУЮЩЕЙ.
var
t: textfile;
s: string;
c: char;
d: real;
k, k1: integer;
begin
assignfile(t, ‘t.txt’);
reset(t);
read(t, s); или read(t, с); или read(t, d); или read(t, k); или read(t, k,k1);
3

4. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры read
Так как в текстовом файле могут быть записаны: символы, строки (в том числе и
числа), результат чтения зависит от:
1) что записано в файле;
2) какого типа переменные в списке ввода;
3) каким способом прочитаны.
Пример
var
В файле
t: textfile;
записано:
k, k1: integer;
23 45 или
begin
23
assignfile(t, ‘t.txt’);
reset(t);
45
read(t, k, k1);
Результат:
k=23
k1=45
Рекомендуется использовать процедуру read для ввода чисел из
текстового файла.
При вводе чисел с помощью процедуры read все пробелы, символы перевода на следующую
строку, символы окончания строки, символы табуляции игнорируются.
4

5. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры read
Пример
В файле
var
записано:
t: textfile;
я пишу
s, s1: string[3];
на доске
begin
Результат:
assignfile(t, ‘t.txt’);
s=‘я п’
reset(t);
s1=‘на ’
read(t, s, s1);
Не рекомендуется использовать процедуру read для ввода
строк.
При вводе строк строка вводится до первого символа
перевода на следующую строку или символа окончания
строки (но не более указанной в описании длины строки).
5

6. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры read
Пример
var
t: textfile;
с, с1:char;
begin
assignfile(t, ‘t.txt’);
reset(t);
read(t, c, c1);
В файле
записано:
иy
Результат:
с=‘и’
с1=‘у’
При вводе символов с помощью процедуры read
вводятся и невидимые символы перевода на
следующую строку, и символы окончания строки.
6

7. Стандартные процедуры для работы с текстовыми файлами

Процедура readln (имя файловой переменной, список ввода);
ln – сокращение от англ. line – строка.
Процедура readln используется для чтения из файла аналогично
процедуре read. Она считывает до символа окончания строки.Ранее
должны быть выполнены процедуры assignfile и reset. В текстовом
файле могут быть записаны: символы, строки (в том числе и числа
integer или real).
var
t: textfile;
s: string;
c: char;
d: real;
k, k1: integer;
begin
assignfile(t, ‘t.txt’);
reset(t);
readln(t, s);
7

8. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры readln
Пример
var
В файле
записано:
t: textfile;
я пишу
s, s1: string;
на доске
begin
Результат:
s=‘я пишу’
assignfile(t, ‘t.txt’);
s1=‘на доске’
reset(t);
readln(t, s, s1);
Рекомендуется
использовать
процедуру
readln для ввода строк из текстового файла.
8

9. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры readln
Пример
В файле
var
записано:
t: textfile;
23 45
k, k1: integer;
53 67
Результат:
begin
k=23
assignfile(t, ‘t.txt’);
k1=53
reset(t);
readln(t, k, k1);
Не рекомендуется использовать процедуру
readln для ввода чисел.
9

10. Стандартные процедуры для работы с текстовыми файлами

Процедура write (имя файловой переменной, список вывода);
Список вывода – последовательность переменных через запятую.
Процедура write используется для записи в файл. Ранее должны быть
выполнены процедуры assignfile и rewrite. В текстовый файл могут быть
записаны: символы, строки (в том числе и числа integer или real). При
выполнении процедуры write указатель автоматически смещается на число
записанных компонент и указывает на АДРЕС КОМПОНЕНТЫ, КОТОРАЯ
ЗАПИШЕТСЯ СЛЕДУЮЩЕЙ.
var
t: textfile;
s: string;
c: char;
d: real;
k, k1: integer;
begin
assignfile(t, ‘t.txt’);
rewrite(t);
write(t, s); или write (t, с); или write (t, d); или write (t, k); или
write (t, k,k1);
10

11. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры write
При записи переменных типа integer
Пример
k=23
var
t: textfile;
k: integer;
begin
assignfile(t, ‘t.txt’);
rewrite(t);

write(t, k:5);
Результат:
k= 23
5 - число позиций в файле, отведенное под k (включая
позицию под знак числа + или -). Если в числе
меньше знаков, то слева приписывается
недостающее количество пробелов.
11

12. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры write
При записи переменных типа string
Пример
s=‘Я пишу’
var
t: textfile;
s: string;
begin
assignfile(t, ‘t.txt’);
rewrite(t);
write(t, s:5);
Результат:
s=‘Я пиш’
5 - число позиций в файле, отведенное под s. Если
в строке больше знаков, то она обрезается.
12

13. Стандартные процедуры для работы с текстовыми файлами

Рекомендации при использовании процедуры write
При записи переменных типа real
Пример
var
k=-2.3
k=-2.3819
t: textfile;
Результат:
k: real;
k= -2.300 k= -2.382
begin
assignfile(t, ‘t.txt’);
rewrite(t);
write(t, k:9:3);
9 - число позиций в файле, отведенное под k (сюда входят: позиция под знак числа
+ или -, число позиций под целую часть, позиция под точку, число позиций под
дробную часть).
3 – число позиций в файле, отведенное под дробную часть.
Если в числе меньше знаков, то слева приписывается недостающее количество
пробелов, а дробная часть дополняется нулями справа.
Если дробная часть числа занимает больше позиций, чем указано в формате, то
число округляется.
13

14. Стандартные процедуры для работы с текстовыми файлами

Процедура writeln (имя файловой переменной, список ввода);
ln – сокращение от англ. line – строка.
Процедура writeln используется для записи в файл аналогично
процедуре write, но запись в конце дополняется символами конец
строки и перевод на новую строку. Ранее должны быть выполнены
процедуры assignfile и rewrite.
var
t: textfile;
s, s1: string;
s=‘Я пишу’
begin
s1=‘на доске’
Результат:
assignfile(t, ‘t.txt’);
Я пишу
rewrite(t);
на доске
writeln(t, s);
writeln(t, s1);
Рекомендуется использовать процедуру writeln для записи строк в
файл.
14

15. Стандартные процедуры для работы с текстовыми файлами

Процедура append (имя файловой переменной);
Устанавливает
указатель
в
конец
уже
существующего файла и позволяет дописать в конец
этого файла новые компоненты. Ранее должна быть
выполнена процедура assignfile.
var
t: textfile;
s, s1: string;
begin
assignfile(t, ‘t.txt’);

append(t);
writeln(t,s);
15

16. Создание текстового файла 1 способ

1
2
начало
Связать t с
файлом t.txt
3
Открыть файл t для
записи
4
Цикл А
1≤ i≤n
5
Ввод s
6
7
8
Запись s
в файл t
Цикл А
i
Закрыть
файл t
9
конец
16

17. Создание текстового файла 1 способ

var
t: textfile;
s: string;
i, n: integer;
begin
assignfile(t, ‘t.txt’);
rewrite(t);
n:= Memo1.Lines.Count;
for i:=1 to n do begin
s:=Memo1.Lines[i-1];
writeln(t,s)
end;
closefile(t)
end;
17

18. Создание текстового файла 2 способ

1
начало
2
Создать файл t.txt
3
конец
Begin
Memo1.Lines.SaveToFile(‘t.txt’)
end;
18

19. Чтение из текстового файла 1 способ

1
2
начало
Связать t с
файлом t.txt
3
Открыть файл t для
чтения
4
5
не конец
файла t
Да
Читать s
из файла t
Нет
6
Вывод s
7
Закрыть
файл t
8
конец
19

20. Чтение из текстового файла 1 способ

var
t: textfile;
s: string;
begin
assignfile(t, ‘t.txt’);
reset(t);
while not(eof(t)) do begin
readln(t,s);
Memo2.Lines.Add(s);
end;
closefile(t)
end;
20

21. Чтение из текстового файла 2 способ

1
начало
2
Прочитать файл
t.txt
3
конец
Begin
Memo2.Lines. LoadFromFile(‘t.txt’)
end;
21

22. Использование объекта Mainmenu

Объект MainMenu находится на
вкладке Standard
22

23. Использование объекта Mainmenu

23

24. Использование объекта Mainmenu

24

25. Конструктор объекта Mainmenu

25

26. Использование объекта Mainmenu

26

27. Форма с объектом Mainmenu

27

28. Обработчики событий клика на пункты меню объекта Mainmenu

28
English     Русский Правила