Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Шаг 51 - Инструкция Put




Public MyVar, YourVar, ThisVar As Integer

 

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

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

Параметры
номерФайла: Обязательный. Любой допустимый номер файла.
НомерЗаписи: Необязательный. Номер записи (режим Random) или номер байта (режим Binary), с которого следует начать запись.
ИмяПеременной: Обязательный. Имя переменной, содержащей данные, которые следует записать в файл.

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

Put #4,,FileBuffer

Для файлов, открытых в режиме Random, применимы следующие правила:
Даже если длина данных, подлежащих записи, меньше длины записи, указанной в предложении Len инструкции Open, инструкция Put начинает запись каждой следующей записи с начала этой записи. Пространство между концом одной записи и началом следующей записи заполняется текущим содержимым буфера файла. Поскольку объем данных, используемых для заполнения, не может быть определен с достаточной степенью уверенности, рекомендуется, чтобы длина записи совпадала с длиной читаемых данных. Если длина данных, подлежащих записи, больше длины записи, указанной в предложении Len инструкции Open, возникает ошибка.
При записи строки переменной длины инструкция Put сначала записывает 2-байтовый дескриптор, содержащий длину строки, а затем содержимое этой переменной. Таким образом, длина записи, указанная в предложении Len инструкции Open, должна по крайней мере на 2 байта превышать фактическую длину этой строки.
При записи переменной Variant числового типа инструкция Put сначала записывает 2 байта, указывающие подтип (VarType) типа Variant, а затем содержимое этой переменной. Например, при чтении переменной Variant подтипа VarType 3, инструкция Put записывает 6 байт: 2 байта, указывающие тип переменной Variant как VarType 3 (Long), и 4 байта, содержащие значение типа Long. Длина записи, указанная в предложении Len инструкции Open, должна по крайней мере на 2 байта превышать фактическое число байт, необходимое для размещения этой переменной.
С помощью инструкции Put можно записать массив типа Variant на диск, однако, нельзя записать скаляр типа Variant, содержащий массив. Кроме того, инструкцию Put нельзя использовать для записи объектов на диск.
При записи переменной Variant подтипа VarType 8 (String) инструкция Put сначала записывает 2 байта, указывающие VarType, потом 2 байта, указывающие длину строки, а затем содержимое строки. Длина записи, указанная в предложении Len инструкции Open, должна крайней мере на 4 байта превышать фактическую длину этой строки.
При записи динамического массива инструкция Put сначала записывает дескриптор, длина которого равняется (2 + 8 * числоРазмерностей) байт. Длина записи, указанная в предложении Len инструкции Open, должна быть больше либо равна сумме всех байтов, необходимых для размещения массива данных и дескриптора массива. Например, для размещения описанного ниже массива требуется 118 байт:




Поделиться с друзьями:


Дата добавления: 2015-06-27; Просмотров: 292; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.011 сек.