2 Операторы и функции обработки строковых данных Оператор Bin Bin [$]


Название2 Операторы и функции обработки строковых данных Оператор Bin Bin [$]
страница14/24
ТипДокументы
1   ...   10   11   12   13   14   15   16   17   ...   24

© InterTrust Co. Тел. (095) 9567928

308

Язык LotusScript






Если отсутствует какая-либо часть выражения (определяющая дату и/или определяющая время), выводится только присутствующая часть значения.

Variant, значение

Empty

В файл выводится запятая. Если же пустой элемент является последним в выводном списке, то запятая не выводится.

Variant, значение Null

В файл выводится строка #Null#.

Пример.

Dim fileNum As Integer, empNumber As Integer, 1 As Integer

Dim fileName As String, ernpName As String

Dim empLocation As Variant

Dim empSalary As Currency

fileNum% = FreeFile()

fileName$ = "DATA.TXT"

fileNum%

123, "1 Rogers Street", 25000.99 456, "Two Cambridge Center", 98525.66 , 789, "Fourth Floor", 0

Open fileName$ For Output As

Write #fileNum%, "Joe Smith",

Write #fileNum%, "Jane Doe",

Write #fileNum%, "Jack Jones",

'Чтение из файла и Open fileName$ For For I% = 1 To 3

Input. #fileNum%,

Close fileNum%

fileNum%

вывод. Input As

Print Next I% Close fi

empName$

.eNum%


empName$, empNumber%, empLocation, empSalary@ empNumber%, empLocation, empSalary@

2.8.11.3, Функции ввода/вывода

Функция EOF

EOF (fileNumber)

Возвращает целое значение, определяющее достижение конца файла. fileNumber - номер. идентифицирующий файл, присвоенный ему при его открытии.

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

Тип файла

EOF возвращает True (-1) если:

EOF возвращает False(0) если:

Двоичный

Последнее выполнение оператора Оператор Get не смог выполнить чтение затребованных номером байтов данных.

Не последнее выполнение оператора Оператор Get выполнил чтение затребованных номером байтов данных

Произвольный

Затребованная запись не может быть прочитана по причине дос­тижения конца записей в файле

Чтение затребованной записи успешно выполнено

Последователь­ный

Достигнут конец файла

Не достигнут конец файла

Определяет достижение конца файла при чтении из него данных. Символ Ctrl+Z (ASCII код = 26) не определяет маркер конца файла любого из вышеуказанных типов.

© InterTrust Co. Тел. (095) 9567928

Lotus Domino R. 5: @-формулы, LotusScript, встроенные классы LotusScript и Java 309

Пример.

Dim text As String, fileNum As Integer fileNum's = FreeFileO

Open "C:\CONFIG.SYS" For Input As fileNum! Do Until EOF(l)

Line Input ttl, text$

Print text$ Loop Close fileNurr.%

Функция FreeFile FreeFile

Возвращает свободный номер (тип Integer) для использования при открытии файла.

Функция FreeFile выдает номер файла, не являющийся номером ни одного уже открытого файла. Если все возможные номера использованы, выдается сообщение об ошибке. Всего таких номеров может быть от 1 до 255. Вызвать функцию можно в виде FreeFile или FreeFile().

Пример. Использование функции FreeFile для получения свободного номера файла. Значение номера хранится в переменной filNum%.

Dim fileNum As Integer .

Dim cdr As String •

cdr$ = CurDriveO + "\AUTOEXEC.BAT"

'Присваивает переменной fileNum значение следующего допустимого

1 номера файла.

fileNum% = FreeFile ()

Print FreeFileO

' Выводит 1 (1 не использован)

Open cdr$ For Input Access Read As fileNum! ' Открыт файл с № 1

Print FreeFile ()

'Выводит 2 (номер 1 использован)

Close fileNum% "

Print FreeFile () '

'Выводит 1 (номер 1 не использован)

Функция Input

Input[S] ( count, [#]fileNumber )

Считывает последовательность символов из последовательного или двоичного файла в строковую переменную без каких-либо преобразований. Возвращаемое значение для функции Input - типа Variant, а для функции InputS - типа String.

count - число считываемых символов (не более 32000). fileNumber - число, определяющее номер открываемого файла.

LotusScript возвращает определенное число символов, начиная с текущей позиции в файле. Если количество запрашиваемых символов превышает разрешенное, возвращается максимально разрешенное количество символов. Если длина возвращаемой строки превышает значение count, выдается сообщение об ошибке. Если значение счетчика считываемых символов (count) = 0, LotusScript возвращает (""). Возвращаются все считываемые символы, включая символы "перевод строки", двойные кавычки, пробелы. При необходимости, можно получить байтовые представления символов используя функции InputB или InputB$.

© InterTrust Co. Тел. (095) 9567928

310 Язык LotusScript

Можно использовать функции Input, Input$, InputB, или InputB$ для чтения данных из файла, открытого в режиме Output, Append, или Random.

Пример. -

Dim fileNum As Integer Dim fileName As String Dim firstCheck As String fileNum%; = FreeFile ( ) fi1eName $ = "DATA.TXT" 'Вывод данных.

Open fileName$ For Output. As fileNum%

Write #fileNum%, "Joe Smith", 123, "1 Smith Road", 25000.99 Write #fileNum%, "Jane Doe", 456, "Two Cambridge Center", 98525.66 Close fileNum%'Чтение первых 23 символов и печать данных. Open fileName$ For Input As fileNum% firstCheck$ = Input$(23, fileNum%)

Print firstCheck$ ' Выводит: "Joe Smith",123,"1 Smit Close fileNum%

Функция InputB

InputB[$] ( count, [#]fi!eNumber )

Возвращает указанное количество байтов из файлов последовательного доступа или двоичных в строковую переменную без преобразования данных. Функция InputB возвращает значение типа Variant, a InputBS - типа String.

count - количество считываемых байтов (не более 64000; это количество байтов определяет 32000 символов). fileNumber - номер открываемого для чтения файла.

LotusScript возвращает указанное количество байтов, начиная с текущей позиции в файле. Если количество запрошенных байтов превышает допустимое, будет возвращено допустимое количество байтов и выдано сообщение об ошибке. Количество возвращаемых символов равно половине количества возвращаемых байтов (при нечетном количестве возвращаемых байтов их число автоматически приводится к четному с помощью операции count + 1). Если count = 0, LotusScript возвращает пустую строку ("").

Считываемые данные не преобразуются. Все байты вводятся без изменения, включая байты, представляющие "перевод строки", двойные кавычки, и пробел. Можно использовать функции Input, InputS, InputB. или InputBS для чтения данных из файла, открытого в режиме Output, Append, или Random.

Пример.

Print InputB$(4, 1) ' Выводит на печать 4 байта из файла с номером 1.

Функция LOC

LOC (fileNumber )

Возвращает текущую позицию в файла. fileNumber - номер, назначаемый файлу при его открытии.

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

© InterTrust Co. Тел. (095) 9567928

Lotus Domino R. 5: @-формулы, LotusScript, встроенные классы LotusScript и Java 311

Тип файла

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

Произвольный

Номер последней записи считанной или записанной в файл

Последовательный

Номер позиции байта в файле, деленный на 128 и округленной до целого значения.

Двоичный

Номер позиции последнего считанного или записанного в файл байта.

Пример. Создается произвольный файл с именем DATA.TXT и в него записываются две записи. В процессе записи контролируется длина файла. После перезаписи второй записи на место первой (удаления первой записи) длина файла уменьшается на 1.

Type PersonRecord

encumber As Integer

empName As String *20 End Type

Dim rec1 As PersonRecord, rec2 As PersonRecord Dim fileNum As Integer Dim filename As String fileNum% = FreeFile() fileName$ = "DATA.TXT"

Open fileName$ For Random As fileNum%, rec1.encumber% = 123 rec1,empName$ = "John Smith" Put #fileNum%, 1, rec1

Print LOC(fileNum%) ' Выводит 1

rec2.empNumber% =456 rec2.empName$ = "Jane Doe" Put #fileNum%, 2, rec2

Print LOC(fileNum!) ' Выводит 2

Get #fileNum%, 1, rec2 <ч.

Print LOC(fileNum%} ' Выводит 1

Close fileNum%

ФУНКЦИЯ LOF •.- ..;..• ,.;:'...,;•• ....-.•:. •,....;.-........ •....---.- :-...;.......- :-.. :'•-

LOF (fileNumber )

Возвращает длину открытого файла в байтах (тип Long). fileNumber - номер, назначенный файлу при его открытии.

Функция LOF работает только с открытым файлом.

Пример. Использование LOF для определения длины файла, и выполнение Input$ для чтения файла в строковую переменную izFile.

Dim izFile As Integer

Dim fileName As String, fileContents as String

izFile% = FreeFile ()

tileName$ = "c:\autoexec.bat" ...

Open fileName$ For Input As izFile%

fileContents$ = Input$(LOF(izFile%), izFile%)

Print fileContents$ 'Вывод на экран содержимого файла

Функция Seek .-/.•••...•-....••......•. -':'•••-•,•.-..-.-. -'::•;-••....•..- •:•••. . .... ....•-.-:--• •

Seek ( fileNumber )

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

© InterTrust Co. Тел. (095) 9567928

312 Язык LotusScript

fileNumber - номер, назначенный файлу при его открытии в операторе Open.

Функция Seek возвращает значение типа Long, заключенное в интервале от 1 до 2.0Е31 -1 включительно, если номер позиции в файле не превышает этот диапазон. Для файла, в котором номер позиции превышает 2.0ЕЗО, возвращается отрицательное значение.

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

Первый байт или первая запись в файле всегда имеют номер позиции равный 1.

Пример.

Type personRecord

empNumber As Integer

empName As String * 20 End Type

Dim rec1 As personRecord, rec2 As personRecord Dim fileNum As Integer, recNum As Integer Dim fileName As String fileNum% = FreeFile() fileName$ = "DATA.TXT" recNum% == 5

Open fileName$ For Random As fileNum"; Len = ben (reel) reel.empNumber% = 123 reel.empNameS = "John Smith"

Print Seek(fileNum%) 'Выводит 1 в текущую позицию файла

Put #fileNum!, recNum%, reel 'Вывод 5-й записи в файл
Print Seek ( f ileNurn% ) 'Выводит 6

Seek fileNum!, 1 .'Возврат к 1-й записи в файле

Print Seek(fileNum%) 'Выводит 1

Rec2.empNumber% = 456 Rec2.empName$ = "Jane Doe"

Put #fileNum%, , rec2 'Вывод данных в текущую позицию файла

Print Seek(fileNuml) 'Выводит 2

Close fileNum%

Функция Tab

7

Tab ( column )

При вызове из операторов Print или Print # функция Tab выводит в текущую позицию указанное количество символов.

column - любое числовое выражение в интервале значений от 1 до 32000 включительно, определяющее количество позиций вывода. Даже если значение column меньше 1, по умолчанию функция Tab установит ее в 1 (левая граница вывода).

Если определена ширина для выводного файла, функция Tab проверяет значение column на соответствие этой ширине и выполняет следующее:

  • если вывод производится уже за пределами установленной ширины, функция Tab
    выводит символ "перевод строки" и продолжает вывод оставшихся символов в
    следующую строку;

  • если количество символов, определенное значением column, помещается в текущую
    позицию, функция Tab выводит необходимое количество символов, начиная с указанной
    позиции в текущую строку. Если вывод производится в строку, ширина которой
    установлена с помощью оператора Width #, функция Tab выполняет следующее:

© InterTrust Со. Тел. (095) 9567928

Lotus Domino R. 5: @-формулы, LotusScript, встроенные классы LotusScript и Java

313



Column

Tab выводит

> ширины

column Mod width

< 1

column 1

< текущей позиции вывода

(column - текущая позиция) следующая

строка

> текущей позиции вывода

(column - текущая позиция)) та же строка

Пример. Выводится содержимое переменных firstN и iastN. Функция Tab() используется для разделения следующих элементов: Bob Jeremiah, Jeremiah, Jeremiah, Jeremiah. Точка с запятой в операторе Print является опцией; знак не влияет на формат вывода, если позиции вывода определяются с помощью Tab.

Dim firstN As String, IastN As String

firstN$ = "Bob"

lastN$ = "Jeremiah"

Print firstN$; Tab (5); lastN$; Tab (1) ; last.N$; Tab (2); lastN$; _Tab(3);

lastN$
1   ...   10   11   12   13   14   15   16   17   ...   24

Похожие:

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconПрактическая работа №11
В excel имеются средства для обработки данных, организованных по принципу баз данных – функции списка, основные операции которых...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconГау «мфц рс(Я)» от 22. 01. 2014 г. №12/1 политика в области обработки...
Республике Саха (Якутия)» (далее – гау «мфц рс(Я)» или Оператор) считает важнейшими своими задачами соблюдение принципов законности,...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconИнструкция по обработке персональных данных без использования средств...
Положения об особенностях обработки персональных данных, осуществляемой без использования средств автоматизации и устанавливает порядок...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconРегламент исполнения государственной функции «Ведение реестра операторов,...
Рриториальных органов, а также порядок взаимодействия Роскомнадзора и его территориальных органов с операторами, осуществляющими...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconСогласовано
Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных данных,...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconПолитика в области обработки и защиты персональных данных в Сельской...
Категории обрабатываемых персональных данных, источники их получения, сроки обработки и хранения. 3

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconУтверждено распоряжением Администрации Комсомольского района
Постановлением Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconМбоу «Конарская сош» общие положения
Постановлением Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconАо до «дюсш «Асамат» Цивильского района чр общие положения
Постановлением Правительства Российской Федерации от 15. 09. 2008 №687 «Об утверждении Положения об особенностях обработки персональных...

2 Операторы и функции обработки строковых данных Оператор Bin Bin [$] iconПоложение о порядке обработки и защиты персональных данных в администрации...
Ии администрации сельского поселения (Н. П. Свистуновой) довести под роспись до сотрудников администрации сельского поселения, обязанности...

Вы можете разместить ссылку на наш сайт:


Все бланки и формы на filling-form.ru




При копировании материала укажите ссылку © 2019
контакты
filling-form.ru

Поиск