Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВП.docx
Скачиваний:
1
Добавлен:
22.11.2019
Размер:
27.71 Кб
Скачать

10. Робота з нетипізованними даними

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

З поняттям типизованного файлу тісно пов'язане поняття покажчика на поточний елемент файлу. Іншими словами, при роботі з двійковим файлом в будь-який момент часу один з елементів файла є "активним", тобто з ним можуть проводиться небудь дії.

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

В типізованих файлах може міститися будь-яка інформація, проте всякий зберігається елемент займає певну кількість байт. Тому при його витяганні слід використовувати змінні відповідного типу, щоб дані були коректно оброблені. Слід точно знати елементи яких типів і в якому порядку зберігаються в двійковому файлі, тобто де розташований кожен елемент і скільки він займає байт. Інакше, якщо покажчик буде переміщений не на перший байт чергового елемента, то, за аналогією з попереднім прикладом, обробка інформації буде працювати коректно і призведе до помилкових результатів. Обробка будь-якого файла починається з його відкриття, а при закінченні роботи з файлом його необхідно закрити. Під час роботи програми можуть бути одночасно відкриті кілька файлів. Тому, для того, щоб не виникло плутанини при зверненні до них, з кожним з файлів в програмі ототожнюється спеціальна змінна, звана файловим номером і визначальна його положення в списку відкритих в даний момент файлів. Всі операції по обробці файлів в програмі виконуються за допомогою звернення до відповідних файловим номерам.1. Відкриття файлу. Будь-який файл створюється або відкривається за допомогою оператора Open, синтаксис якого залежить від його різновиду. Для двійкових файлів загальний вигляд даного оператора виглядає наступним чином:

Open - службове слово, використовуване при відкритті або створенні файлу;

Шлях - рядок або змінна типу String, зміст якої є повний шлях до необхідного файлу;

For - ключове слово для визначення типу файлу;

Binary - службове слово, використовуване при створенні або відкритті двійкового файлу;

As - ключове слово для визначення змінної, що містить файловий номер, за допомогою якого буде надалі здійснюється обробка файлу;

Номер - ім'я змінної, що містить номер файлу.

Таблиця 1. Функції і оператори для роботи з каталогами та дисками

Название

Описание

ChDir (путь)

Оператор, устанавливающий новый рабочий каталог на текущем диске

ChDrive (диск)

Оператор для определения нового рабочего диска

CurDir

Функция, возвращающая путь к рабочему каталогу

MkDir (путь)

Оператор, создающий новый каталог

RmDir (путь)

Оператор для удаления существующего каталога, который может быть пуст

2. Закриття файлу. Після закінчення роботи з будь-яким файлом його необхідно закрити за допомогою оператора Close, синтаксис якого однаковий для всіх типів файлів:

Close номер

3. Видалення файлу. У разі потреби видалення файлу з диска використовується оператор вбивств, формат якого аналогічний оператору Закрити. Не варто забувати, що перед видаленням файлу його необхідно обов'язково закрити.

4. Визначення файлового номери. Якщо в програмі відкрито кілька файлів, то для кожного з них визначений свій файловий номер. Для того, щоб визначити значення першого вільного номера для чергового відкритого файлу, слід використовувати функцію FreeFile, результат виконання якої присвоюється змінної-номеру:

  Змінна-номер = FreeFile

5. Перейменування файлу. У тому випадку, коли необхідно дати файлу нове ім'я, слід спочатку його закрити, а потім скористатися оператором Name, синтаксис якого наступний:

Ім'я путь1 Як путь2,

де путь1 - рядок або змінна типу String, якого містить шлях до вихідного файлу;

Путь2 - рядок або строкою змінна, вмістом якої є новий шлях до файлу.

Слід зауважити, що якщо на диску вже існує файл з таким же повним назвою, тобто Шлях2, то при виконанні оператора Name виникає помилка.

6. Копіювання файлу. При необхідності створення копії будь-якого файлу застосовується оператор FileCopy, перед виконанням якого копійований файл повинен бути закритий.

FileCopy Шлях 1, Шлях 2,

    де Шлях 1 - шлях до вихідного файлу;

Шлях 2 - шлях до нового файлу.

При роботі з відкритим файлом можливе виконання двох операцій: занесення даних і зчитування інформації.

7. Запис у файл. Для того, щоб записати в двійковий файл-яку інформацію, слід скористатися оператором Put.

8. Витяг з файлу. Для добування інформації з файлу застосовується оператор Get, формат якого збігається з оператором Put.

Get Номер, Позиція, Змінна.

При виконанні оператора отримати в Змінну заноситься інформація з файлу з вказаним Номером, розташована в ньому за адресою Позиція.

На додаток до опису операторів Покласти і отримати слід зауважити, що перед номером файлу можна вказувати знак #.

Обробка даних в файлах будь-якого типу здійснюється з урахуванням положення покажчика. Для того, щоб визначити порядковий номер оброблюваного елементу, слід застосовувати функцію пошуку.

Seek (Номер).

Результатом виклику функції пошуку буде поточна позиція, яку займає покажчик у файлі з заданим Номером.

         Слід зазначити, що в назвах дисків, каталогів і файлів можна вказувати як прописні, так і рядкові букви, хоча для ОС Windows або мови Visual Basic в даному випадку вони означають одне і те ж.