Пишет содержание символьной строки в файл.

NoteПримечание

STRTOFILE( ) не пишется в файлы с атрибутами hidden при запуске Visual FoxPro в Windows 2000 и выше.

STRTOFILE(cExpression, cFileName [, lAdditive | nFlag])

Параметры

cExpression

Определяет символьную строку, которая будет записана в файл. cExpression может быть символьной строкой, выражения, которые оцениваются в символьную строку, или символьный тип переменной, элемент массива, или область.

cFileName

Определяет имя файла в который будет записана символьная строка. Укажите полный путь если файл находиться не в текущей директории. Если файл, не существуют, Visual FoxPro автоматически создает ето.

lAdditive (для обратной совместимости)

Определяет способ добавления символьная строка в конец файла. Если lAdditive - истина (.T.), Символьная строка добавляется в конец файла.

Если lAdditive - ложь (.F.) (по умолчанию), файл переписывается символьной строкой. Если SET SAFETY установлен в ON, то в случает если такой файл уже есть будет выведет запрос на его перезапись. Если SET SAFETY установлен в OFF, файл будет переписан без предупреждений.

nFlag

Начиная с Visual FoxPro 7, Вы можете использовать параметр nFlag вместо lAdditive , чтобы писать в содировках UTF-8 и Unicode Byte Order Marks. Следующая таблица показывает существующие значения nFlag.

nFlag Битовое представление Описание

0 (По умолчанию)

0000

Файл будет переписан символьной строкой (прежде lAdditive=.f.)

1

0001

Строка будет добавлена в конец файла (прежде lAdditive=.t.).

2

0010

Добавит в начале файла Unicode Byte Order Mark (BOM) FF FE. При этом принимается, что cExpression в кодировке UNICODE, следовательно никакой перевод не выполняется. Файл будет переписан.

4

0100

Добавит в начале файла UTF-8 Byte Order Mark (BOM) EF BB BF. При этом принимается, что cExpression в кодировке UTF-8,следовательно никакой перевод не выполняется. Файл будет переписан.

Expand imageВозвращаемое значение

Числовое. Возвращает количество байтов записанных в файл.

Expand imageЗамечание

Величина nFlag 3 или 5 недействительна. Нельзя уставовливать другие биты если установлен бит 1.

В отличие от более ранних версий Visual FoxPro, STRTOFILE( ), открывает файл в Коллективном (Shared) а не Эксклюзивном (Exclusive) режиме. Это полезно когда многочисленные программы пытаются одновременно записываться в тот же файл. В случае невозможности открыть файл для записи STRTOFILE( ) возвращает 0.

Expand imageСмотрите также