Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
VB_1 Mетодичка-Exel_укр_2.doc
Скачиваний:
3
Добавлен:
17.09.2019
Размер:
1.43 Mб
Скачать

33.5.Запис даних у файл

На відміну від файлів послідовного доступу для збереження даних у файлах довільного доступу оператори Print або Write не застосовуються. Замість них застосовується оператор Put. Цей оператор має три аргументи — файлове число, номер запису і змінну типу запис:

Put #файлове_число, номер_запису, змінна

Так, наступний оператор Put зберігає вміст theDB(l) в третьому записі файлу, відкритого з файловим числом 1:

Put #1, 3, theDB(l)

Якщо ви опустите номер запису в операторові Put, то буде використаний номер, наступний за тим, який був використаний в останньому з попередніх операторів Get, Put або Seek.

Розглянемо простий приклад збереження даних побудованої таблиці в файл довільного доступу на диску Е: (e:/pr2. dat). Запис буде складатися з двох атрибутів x і y цілого типу. Значення х задає користувач, через вікно запиту, значення у розраховується у=х2 . Кількість записів складає 10.

Type xy створюємо структуру запису

x As Integer змінна х типу коротке ціле

y As Long змінна у - довге ціле

End Type

Dim fx(10) As xy, r As Integer ‘ оголошуємо назву запису(fx) з вказівкою типу xy

Sub pr2()

Dim x As Integer, у As Long змінні х, у – посередники (є не обов’язковими)

   Dim i As Integer змінна i – номер запису

r = Len(fx(1)) визначаємо довжину запису

Open "e:/pr2.dat" For Random As 1 Len = r

відкриваємо файл e:/pr2.txt для роботи з файлови числом 1

For i = 1 To 10 ‘ початок иклу (лічильник кількості утворених записів)

x = val(InputBox("x= ")) ‘ запит на введення змінної х

fx(i).x = x надання значення в перше поле запису fx(i).x

y = x ^ 2 розрахунок значення у

fx(i).y = y надання значення в перше поле запису fx(i).у

Put #1, i, fx(i) ‘запис у файлу значення запису fx(i) полів .x і .y

Next i

Close #1

End Sub

33.6. З читування даних з файлу

Для вибірки запису з дискового файлу і завантаження її в змінну типа запис застосовується оператор Get. Оператор Get має такий же синтаксис, як і оператора Put. Він також має три аргументи — файлове число, номер запису і змінну типу запис, що одержує дані із запису файла на диску:

Get #файлове_число, номер_запису, змінна

Розглянемо простий приклад зчитування даних з файлу довільного доступу, що розташованний на диску Е: (e:/pr2.dat) та був утворений в наступному прикладі. Значення х та у зчитані з файлу запишемо на поточному листі в стовпчиках А та В.

Sub pr2_2()

r = Len(fx(1)) ‘ визначаємо довжину запису

Open "e:/pr2. dat" For Random As 1 Len = r

відкриваємо файл e:/pr2.txt для роботи з файлови числом 1

Формуємо шапку таблиці в клітинах А1 і В1

Cells(1, 1).Value = " x"

Cells(1, 2).Value = " Y"

For i = 1 To 10

Get #1, i, fx(i) ‘зчитуємо з файлу значення запису (fx(i).x і fx(i).y)

Cells(i + 1, 1).Value = fx(i).x ‘ записуємо значення х в перший стовпчик (А)

Cells(i + 1, 2).Value = fx(i).y ‘ записуємо значення у в другий стовпчик (В)

Next i

Close #1

End Sub

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

Приклад:

Put #1, 3, theDB(l).Name

Контрольні завдання по темі

1. Теоретичні питання

2. Тести

3. Практичні завдання

Література

  1. Руденко В.Д., Макарчук О.М., Практичний курс інформатики, Київ, 1997.

  2. Эд Ботт, Руководство пользователя. Microsoft Office 4 (серія “Без проблем”), Бином, Москва, 1996.

  3. Фигурнов В.Э., IBM PC для користувача, 2001.

  4. Стивен Л. Нельсон и Питер Веверка, Полний справочнык по Microsoft Office 97, Диалектика, Киев - Москва - Санк-Петербург,1998

  5. Microsoft Office 2000: справочник/Под ред. Ю. Колесникова. СПб.: Питер, 1999.

  6. Інформатика. Комп’ютерна техніка. Комп’ютерні технології: посібник/ Под ред. О.І.Пушкаря. Київ, 2001. стор.554-578.

4

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]