Бинарные файлы

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.