13.14. FILE/IO

About
Functions order

13.14.1. About FILE/IO

13.14.2. FILE/IO functions order

ADIR() Заполняет группу массивов информацией директории.
BZIP2CLOSE() Закрывает bZIP2 файл.
BZIP2OPEN() Открывает bZIP2 файл.
BZIP2READ() Читает данные из bZIP2 файла.
BZIP2WRITE() Записывает данные в bZIP2 файл.
CURDIR() Возвращает имя текущей директории DOS.
DIRCHANGE() Change the current DOS directory
DIRECTORY() Создает массив с информацией о каталогах и файлах.
DOSERROR() Возвращает номер последней ошибки DOS.
DOSPATH() Возвращает имя файла как в DOS системах.
FACCESS() Проверка прав доступа к файлу.
FCLOSE() Закрывает открытый файл и записывает на диск буфер DOS.
FCREATE() Создает и/или сокращает двоичный файл до нулевой длины.
FERASE() Удаляет файл с диска.
FERROR() Проверяет наличие ошибок обработки двоичных файлов.
FERRORSTR() Under construction
FILE() Определяет, существует ли файл в текущей xClipper директории или по
FILEATTR() Under construction
FILEATTRS() Возвращает строку - атрибуты файла.
FILEGETSTR() Возвращает строку.
FOPEN() Открывает двоичный файл.
FREAD() Считывает символы из двоичного файла в буферную переменную.
FREADSTR() Считывает символы из двоичного файла.
FRENAME() Изменяет имя файла.
FSEEK() Устанавливает указатель двоичного файла на новую позицию.
FT_DFCLOSE() Close file displayed by FT_DISPFILE()
FT_DFSETUP() Set up parameters for FT_DISPFILE()
FT_FAPPEND() Appends a line to the currently selected text file
FT_FBOF() Determine if attempt to skip past beginning of text file
FT_FDELETE() Deletes a line from the currently selected text file
FT_FEOF() Determine if end of text file has been encountered
FT_FERROR() Return the error code for a text file operation
FT_FGOBOT() Go to the last record in a text file
FT_FGOTO() Move record pointer to specific record in a text file
FT_FGOTOP() Go to the first record in a text file
FT_FINSERT() Inserts a line in the currently selected text file
FT_FLASTRE() Get the no. of records in the currently selected text file
FT_FREADLN() Read a line from the currently selected text file
FT_FRECNO() Return the current record number of a text file
FT_FSELECT() Select a text file workarea
FT_FSKIP() Move the record pointer to a new position in a text file
FT_FUSE() Open or close a text file for use by the FT_F* functions
FT_FWRITELN() Write a line to the currently selected text file
FWRITE() Записывает информацию в открытый двоичный файл.
GZIPCLOSE() Закрывает GZIP файл.
GZIPOPEN() Открывает GZIP файл.
GZIPREAD() Читает данные из GZIP файла.
GZIPWRITE() Записывает данные в GZIP файл.
MAKEPATH() Возвращает путь к файлу в UNIX стиле.
MEMOREAD() Возвращает содержимое дискового файла как строку символов.
MEMOWRIT() Записывает символьную строку или memo-поле в дисковый файл.
NETERR() Индицирует сбой выполнения команд при работе в сети.
OUTERR() Выводит результаты вычисления выражений передаваемого списка на
OUTSTD() Записывает список выражений на стандартное устройство вывода.
STARTPATH() Возвращает полный путь и имя программы.
TCPACCEPT() Accept a connection on a socket.
TCPCLOSE() Закрыть соединение.
TCPCONNECT() Установить соединение с сервером.
TCPLISTEN() Слушать порт.
TCPREAD() Прочитать в буфер данные из соединения.
TCPWRITE() Передать данные из буфера в соединения.

13.14.2.2. Function FCLOSE()

 FCLOSE(<номер файла>) --> признак ошибки

13.14.2.3. Function FCREATE()

 FCREATE(<имя файла>, [<атрибут>]) --> номер файла

13.14.2.3.3. Description

FCREATE() является функцией обработки файлов низкого уровня, которая либо создает новый файл, либо открывает существующий файл и обрезает его до нулевой длины. Если файл с именем <имя файла> не существует, он создается и открывается для записи. Если же он существует и может быть открыт для записи, то сокращается до нулевой длины. Если его нельзя открыть для записи, FCREATE() возвращает значение (-1), а FERROR() устанавливается на соответствующий код ошибки.

Если функция FCREATE() успешно создает новый файл, он остается на все время работы до его закрытия доступным для ввода/вывода. Атрибут файла, устанавливаемый с помощью аргумента <атрибут>, подсоединяется к файлу при его закрытии, разрешая таким образом запись в новый созданный файл, даже если он был создан только для чтения. Список режимов доступа приводится в описании функции FOPEN().

Поскольку доступ других функций к открытому файлу производится через присвоенный ему номер, возвращаемое значение функции FCREATE() необходимо всегда переносить в переменную памяти.

Так же, как и на остальные функции обработки файлов, на функцию FCREATE() не влияют установки DEFAULT и PATH. Если явно не установлен маршрут, созданные файлы она размещает в текущей директории.

Предупреждение: Данная функция позволяет осуществлять доступ низкого уровня к файлам и устройствам DOS. Она должна использоваться чрезвычайно осторожно и требует хороших знаний операционной системы.

13.14.2.4. Function FERASE()

 FERASE(<имя файла>) --> признак завершения

13.14.2.6. Function FILE()

 FILE(<шаблон поиска>) --> признак наличия

13.14.2.10. Function FOPEN()

 FOPEN(<имя файла>, [<режим доступа>]) --> номер файла

13.14.2.10.1. Arguments

<имя файла> - это имя файла, подлежащего открытию, если необходимо,
  имя может включать в себя маршрут поиска.
  
<режим доступа> является запрашиваемым режимом доступа к DOS,
  указывающим, как нужно осуществлять доступ к открытому файлу.
  Ниже приведены допустимые режимы доступа:
  
  
 
FOPEN() Access Modes
------------------------------------------------------------------------
Mode    Fileio.ch      Operation
------------------------------------------------------------------------
0       FO_READ        Open for reading (default)
1       FO_WRITE       Open for writing
2       FO_READWRITE   Open for reading or writing
------------------------------------------------------------------------
  
  The Sharing Modes determine how other processes may access the file.
  
  
 
FOPEN() Sharing Modes
------------------------------------------------------------------------
Mode    Fileio.ch      Operation
------------------------------------------------------------------------
0       FO_COMPAT      Compatibility mode (default)
16      FO_EXCLUSIVE   Exclusive use
32      FO_DENYWRITE   Prevent others from writing
48      FO_DENYREAD    Prevent others from reading
64      FO_DENYNONE    Allow others to read or write
64      FO_SHARED      Same as FO_DENYNONE
------------------------------------------------------------------------
  
  The Access Modes in combination (+) with the Sharing modes determine the
  accessibility of the file in a network environment.

13.14.2.10.3. Description

FOPEN() является функцией обработки файлов низкого уровня, которая открывает существующий двоичный файл для чтения или записи в зависимости от значения аргумента <режим доступа>. При аварийном завершении функции FOPEN() функция FERROR() возвращает код ошибки DOS. Например, если файл не существует, FOPEN() возвращает код (-1), а FERROR() возвращает код (2), что соответствует ошибке "файл не найден". Полный список кодов ошибок приведен в разделе FERROR().

Если заданный файл успешно открыт, возвращаемым значением является номер файла. Его значение подобно алиасу в системе базы данных и требуется для того, чтобы обеспечить доступ другим функциям для дальнейшей обработки файла. Поэтому всегда необходимо присваивать этот номер переменной, как показано ниже.

Предупреждение: Данная функция позволяет осуществлять доступ низкого уровня к файлам и устройствам DOS. Она должна использоваться чрезвычайно осторожно и требует хороших знаний операционной системы.

13.14.2.11. Function FREAD()

 FREAD (<номер обраб. файла>,@<имя переменной буфера>,
 <к-во байтов>) --> к-во байтов

13.14.2.11.3. Description

FREAD() - это функция обработки файлов низкого уровня, которая считывает символы из двоичного файла в указанную переменную. Она считывает файл, начиная от текущей позиции указателя в файле DOS, продвигая этот указатель на количество считанных байтов. Считываются все символы, включая управляющие, нулевые и символы, имеющие значения кодов более CHR(127).

FREAD() до некоторой степени похожа на функции FREADSTR() и FSEEK(). FREADSTR() считывает заданное количество байтов из файла до следующего нулевого кода (CHR(0)). FSEEK() лишь перемещает указатель без считывания.

Если во время считывания файла возникает ошибка, то функция FERROR() возвращает код этой ошибки DOS. Для ознакомления с перечнем кодов ошибок смотри описание функции FERROR().

Предупреждение: Данная функция позволяет осуществлять доступ низкого уровня к файлам и устройствам DOS. Она должна использоваться чрезвычайно осторожно и требует хороших знаний операционной системы.

13.14.2.12. Function FREADSTR()

 FREADSTR(<номер обраб. файла>,
 <к-во байтов>) --> строка символов

13.14.2.13. Function FRENAME()

 FRENAME(<старое имя файла>, <новое имя файла>) --> признак завершения

13.14.2.13.3. Description

FRENAME() - это файловая функция, которая меняет старое имя файла на новое. Она идентична команде RENAME. При вызове FRENAME() файл с именем, заданным в аргументе <старое имя файла>, переименовывается только в том случае, если он расположен в текущей директории DOS или на заданном пути. FRENAME() не использует для поиска файла установки команд SET DEFAULT или SET PATH. Если исходная директория отличается от новой, то файл переносится в новую директорию. Если файл с именем <новое имя файла> существует, то FRENAME() возвращает (1). Это означает, что функция не выполнила предписанного ей действия. Характер ошибки может быть установлен с помощью функции FERROR().

Предупреждение: Файл должен быть закрыт перед переименованием. Попытка переименовать открытый файл приведет к непредсказуемым результатам. При переименовании файла базы данных, связанный с ним memo-файл (.dbt) также должен быть переименован. Невыполнение этих требований может нарушить правильность работы вашей программы.

13.14.2.14. Function FSEEK()

 FSEEK (<номер обраб. файла>, <смещение>,
 <начало перемещения>]) --> номер новой позиции

13.14.2.14.1. Arguments

<номер обраб. файла> - номер обрабатываемого файла, полученный с
  помощью функций FOPEN(), FCREATE() или предварительно определенный
  в DOS.
  
<смещение> - это количество байтов, на которые должен быть перемещен
  указатель файла с позиции, определенной аргументом <начало поиска>.
  Его значение может быть положительным или отрицательным в зависимости
  от направления перемещения указателя.
  
<начало перемещения> - определяет начальное положение указателя файла
  перед выполнением FSEEK(). По умолчанию это нуль, соответствующий
  началу файла. Если <начало поиска> - конец файла, то аргумент
<смещение> должен быть нулевым или отрицательным.
  
  
 
Методы перемещения указателя файла
---------------------------------------------------------------------
Значение  Fileio.ch    Описание
---------------------------------------------------------------------
0         FS_SET       Позиционирование от начала файла
1         FS_RELATIVE  Позиционирование от текущей позиции указателя
2         FS_END       Позиционирование от конца файла
---------------------------------------------------------------------

13.14.2.16. Function FT_DFSETUP()

 FT_DFSETUP( <cInFile>, <nTop>, <nLeft>, <nBottom>, <nRight>, ;
 <nStart>, <nCNormal>, <nCHighlight>, <cExitKeys>,   ;
 <lBrowse>, <nColSkip>, <nRMargin>, <nBuffSize> ) -> nResult

13.14.2.33. Function FWRITE()

 FWRITE (<номер файла>, <символьная строка>,
 [<к-во записываемых байтов>]) --> к-во записанных байтов

13.14.2.34. Function OUTERR()

 OUTERR(<список выражений>) --> NIL

13.14.2.35. Function OUTSTD()

 OUTSTD(<список выражений>) --> NIL