Основы VBA. Часть 11

Для файлов, открытых в режиме Binary, применимы все перечисленные выше правила, за исключением следующих:
· Предложение Len инструкции Open игнорируется. Инструкция Get считывает все переменные с диска непрерывно, т.е. без заполнения пространства между записями текущим содержимым буфера файла.
· При чтении любых массивов, кроме являющихся элементами типов, определяемых пользователем, инструкция Get считывает только данные. Дескриптор не считывается.
· При считывании строк переменной длины, не являющихся элементами типов, определяемых пользователем, 2-байтовый дескриптор не считывается. Число считываемых байт равняется числу символов, уже содержащихся в строке. Например, следующие инструкции считают 10 байт из файла, которому соответствует номер 1:
VarString = String(10," «)

Get #1,,VarString

В данном примере инструкция Get используется для чтения данных из файла в переменную. Предполагается, что файл TESTFILE содержит пять записей определенного пользователем типа Record.

Type Record ’ Тип, определенный пользователем.

ID As Integer

Name As String * 20

End Type

Dim MyRecord As Record, Position ’ Объявляет переменную.

’ Открывает файл произвольного доступа.

Open «TESTFILE» For Random As #1 Len = Len(MyRecord)

’ Читает из файла с помощью инструкции Get.

Position = 3 ′ Определяет номер записи.

Get #1, Position, MyRecord ’ Читает третью запись.

Close #1 ′ Закрывает файл.

Инструкция Put.

Записывает содержимое переменной в файл на диске.

Синтаксис:

Put [#]номерФайла, [номерЗаписи], имяПеременной

Элемент Описание

номерФайла Обязательный. Любой допустимый номер файла.

НомерЗаписи Необязательный. Номер записи (режим Random) или номер байта (режим Binary), с которого следует начать запись.

ИмяПеременной Обязательный. Имя переменной, содержащей данные, которые следует записать в файл.

Данные, записанные с помощью инструкции Put, обычно считываются из файла с помощью инструкции Get. Первой записи (или байту) файла соответствует номер 1, второй 2 и т.п. Если аргумент номерЗаписи опущен, записывается запись (или байт), на которую указатель был установлен после выполнения последней инструкции Get или Put переведен с помощью функции Seek. Наличие запятых-разделителей является обязательным, например:

Put #4,,FileBuffer

Похожие записи

    No related posts found
Запись опубликована в рубрике Книги, Лекции с метками , , , , , . Добавьте в закладки постоянную ссылку.
Скачать этот текст в формате:

Добавить комментарий