пʼятниця, 4 листопада 2011 р.

Текстові файли


Оскільки в програмуванні найбільш поширені текстові файли, то розглянемо їх більш детально. Дамо визначення текстових файлів – це файли, в яких:

1) інформація представляється в текстовому вигляді за допомогою символів в ASCII-кодах;

2) порції інформації розділяться на рядки. Ознакою кінця рядка служить символ #13 (код 13). Він може поєднуватись з символом переведення рядка #10 (код 10);

3) кінець файлу позначається явно символом ^Z (Ctrl – Z код 26);

4) при записі чисел, рядків і логічних значень вони перетворюються в символьний (текстовий) вигляд;

5) при читанні чисел і рядків вони автоматично перетворюються з текстового виду у відповідний тип змінної, куди ці дані заносяться. Якщо інформація зчитуються в змінну числового типу, то дані з файлу перетворюються в число, якщо в рядкову змінну, то перетворюються в рядок. Невідповідність типів призводить до збою програми. Відповідальність за коректність організації введення-виведення даних при роботі з файлами лежить на розробнику програми.


Якщо файл можна вивести на екран в текстовому режимі і прочитати його – це текстовий файл. Розглянемо короткий приклад текстового файлу:

Текст-файл

[13] [10

Ви читаєте приклад текстового файлу, який [13] [10]

може зберігатися на диску або друкуватися [13] [10]

на принтері чи виводитись на екран монітору[13] [10]

В ньому може бути записана цифрова інформація[13] [10]

123 345 432 0 [13] [10]

12 34 56 78 90 43 56 [13] [10]

1/34 34.67 -45.67 -456.86 [13] [10]

або рядкова інформація [13] [10]

РЯДОК [13] [10]

Кінець файлу [13] [10]

[26]

В квадратних дужках вказані управляючі коди. Управляючі символи з кодами 10, 13, 26 не мають графічного представлення, тому вислів “символ” для них чисто умовний. Їх призначення не зображення чого-небудь, а УПРАВЛІННЯ. Виходячи з вище висловленого, в текстовому режимі управляючі символи на екран і принтер не виводяться, але управляють виведенням інформації на будь-який пристрій. Слід запам’ятати, що кожний рядок закінчується ознакою кінця рядка ([13] [10]) навіть порожній (1-ий зверху). Останній символ [26] у файлі – ознака його кінця. При наборі тексту (в текстових редакторах) ознака кінця рядка формується при натисненні клавіші “Введення” (Еnter) або при автоматичному перенесенні рядка, а так само при явній вказівці (вставка коду #13). В програмах цю ознаку формує оператор WRITELN. Ознака кінця файлу формується при записі файлу на диск (в текстових редакторах) або при відкритті нового файлу (в програмах).

З кожною змінною файлового типу пов'язано поняття ПОТОЧНОГО ПОКАЖЧИКА файлу. Поточний покажчик можна розуміти як приховану змінну (тобто неявно описану разом з файловою змінною), яка позначає “вказує” на деякий конкретний елемент файлу. Графічним чином  інтерпретацію поточного покажчика файлу представлено на мал. 1.



<><> <><> <><> <><> <><> <><> <><> <><> <><> <><> <><>

 ФАЙЛ



Элемент1

Элемент2

Элемент3

. . .

ЭлементN



 ПОТОЧНИЙ ПОКАЖЧИК ФАЙЛУ

Мал. 1.

Як правило, всі дії з файлами проводяться поелементно, причому в цих діях бере участь той елемент файлу, на який вказує поточний покажчик файлу. В процесі роботи програми поточний покажчик може переміщатися, настроюючись на той або інший елемент. Всі елементи файлу вважаються пронумерованими; початковий елемент має НУЛЬОВИЙ номер.

Робота з текстовими файлом відбувається по рядках, причому характер читання і запису є строго послідовним. Це означає, що в текстовому файлі не можна записавши (прочитавши), наприклад, п'ятий елемент, відразу перейти на десятий. Після завершення роботи з п'ятим елементом можна працювати тільки з шостим. Це створює деякі незручності, але вони легко долаються за допомогою спеціальних процедур, орієнтованих на роботу з текстовими файлами.

Немає коментарів:

Дописати коментар