Бинарные файлы
Turbo-Basice позволяет работать с двоичными файлами, которые часто называют бинарными файлами. Концепция бинарных (двоичных) файлов в Turbo-Basic предоставляет более широкие возможности пользователю по сравнению с интерпретирующим Basic. Бинарный файл рассматривается Turbo-Basic как простой набор байтов, поэтому необходимо позаботиться о том, что и куда писать в файл или записывать в него.
Для поиска нужных данных в файле имеется указатель положения в файле (функция LOC указывает его значение), который передвигается по файлу с помощью функции SEEK.
При работе с файлами произвольного доступа следуйте правилам:
1. Открыть файл в бинарном режиме. Теперь Вы можете читать и/или записывать данные в файл.
2. При считывании данных используйте SEEK для позиционирования в файле, затем используйте GET$ для считывания определенного числа знаков (от 1 до 32.767) в строку.
3. Для записи в файл загрузите строковую переменную нужной информацией и выполните PUT$.
4. По окончанию работы закройте файл (CLOSE).
Сведем операторы и функции Turbo-Basic, управляющие бинарными файлами в таблицу:
Оператор/функция Операция
CLOSE Оканчивает операции на файле(ах)
GET$ Считывает определенное число байтов с установленной позиции
LOC Определяет позицию поиска в файле
LOF Возвращает длину файла
OPEN Открывает файл
PUT$ Записывает определенное число байтов с установленной позиции
SEEK Передвигает указатель позиции
____________________________________________________________________________________
Ниже даются описания операторов, которые не были описаны в предыдущих разделах.
GET$-функция Считывает строку с файла, открытого в двоичном режиме.
Синтаксис: GET$ [ #] filenum [, [count], [string variable]]
Комментарии: count - целочисленное выражение от 0 до 32767, указывающее на количество байт, которое надо считать в строку string variable из файла с номером filenum.
Данные считываются с текущей позиции файла (которая может устанавливаться с помощью SEEK). После считывания текущая позиция перемещается на указанное количество байт. GET$, PUT$ и SEEK обеспечивают самый нижний уровень в обработке файлов.
LOF функция LOF возвращает длину файла.
Синтаксис: y=LOF(filenum)
Комментарии: filenum - номер,под которым открыт файл.
LOF возвращает длину указанного файла в байтах. Для файлов связи LOF предусматривает размер интервала в буфере связи.
PUT$-функция PUT$ записывает строку в файл с режимом двоичного счета.
Синтаксис: PUT$ [#] filenum, string expression
Комментарии: В SEEK позиции файла PUT$ записывает содержимое string expression в файл filenum.Файл filenum следовало бы открыть в режиме BINARY.
SEEK Устанавливает позицию в двоичном файле для заявлений GET$ и PUT$ .
Синтаксис SEEK [#] файл_н, позиция
Коментарии SEEK заявляет, что следующее GET$ или PUT$, выполняемое на файле файл_н будет реализовываться на глубине файла равной позиции байтов. Файл файл_н должен быть открыт в режиме BINARY.
Для возврата текущей SEEK - позиции в двоичном файле необходимо использовать функцию LOG.