Лабораторна робота №27
“Файли з даними типу масиви”
Розглянемо на конкретних прикладах — від простого до більш складного — обробку файлів, що містять дані — масиви.
Приклад 16.1. Потрібно записати у файл з ім’ям «file.dat» 10 дійсних чисел, створити з цих чисел масив.
Для цього треба кожне число спочатку ввести з клавіатури в оперативну пам’ять комп’ютера, а потім записати його у файл. Для введення скористаємося функцієюInputBox(). Розташуємо на формі дві кнопки: одну — типу Button — для ініціювання команди «Ввод», іншу – типу BitBtn, з написом «Close» – для закінчення роботи додатка. Вигляд форми, вікна введення і програмного коду наведено нижче:
У заголовні файли програмного коду треба включити два файли:
#include <Dialoge.hpp> і #include <fstream.h>. Перший з них забезпечує доступ до функції InputBox(), а другий — містить засоби роботи з файлами.
Ім’я створюваного файла з урахуванням шляху має вигляд;
“d:\\Users\\Dat_base\\file_dat”.
Конструктор ofstream() створює потік а ім’ям fp для задису даних у файл, що і використовується в циклі for. Оператор іf у цій програмі служить для визначення виконання операції відкриття файла. Якщо ця операція з якихось причин не виконалася, у вікні ShowMesaage() буде виведено повідомлення: «Файл не открыт», і оброблювач припинить подальшу роботу. У протилежному випадку в папці «Dat_base», що створена у каталозі Users на диску D:, буде розташований файл з ім’ям “file1.dat”, у який запишеться 10 чисел.
Приклад 16.2. Із 10 дійсних чисел, що записані у файл з ім’ям “file1.dat” (розглянутий вище приклад 16.1), створити масив і відсортувати його за зростанням значень.
Для розв’язання поставленої задачі необхідно створити відповідний додаток.
Відкриємо нову форму і розмістимо на ній компоненти;
- Label1 — для виведення заголовка «Исходный массив»;
- Label2 — для виведення заголовка «Отсортированный массив»;
- Label3 — для виведення значень цього масиву;
- кнопку Button 1 з написом «Выполнить» — для створення події читання файла в масив, його сортування і виведення;
- кнопку BitBtn2 з написом «Close» для закриття додатка.
Форма і додаток мають вигляд:
#include <vet.h>
#pragma hdrstop