Функции ввода/вывода
Система ввода/вывода, используемая CLIPS, называется маршрутизацией ввода/вывода (I/O routers). Одна из ключевых особенностей системы маршрутизации ввода/вывода — использование логических имен. Логическиеимена позволяют обращаться к устройствам ввода/вывода унифицированным способом, без необходимости учета особенностей конкретного устройства. Многие функции CLIPS используют логические имена в качестве параметров. Логическое имя, созданное пользователем, должно быть строкой, числом или принадлежать типу symbol. CLIPS предоставляет несколько предопределенных логических имен, список которых приведен в табл. 15.8.
Таблица 15.8. Предопределенные логические имена CLIPS
Имя | Описание |
stdin | Логическое имя, определяющее устройство по умолчанию, предназначенное для ввода информации от пользователя. Если такое имя определено, его используют функции read и readln |
stdout | Логическое имя, определяющее устройство по умолчанию, предназначенное для вывода информации для пользователя. Если такое имя определено, его используют функции printout и format |
wclips | Логическое имя, определяющее устройство, которое использует справочная система CLIPS |
wdialog | Устройство, ассоциированное с данным логическим именем, служит для отправки пользователю информационных сообщений |
wdisplay | Отображение такой информации, как правила, факты и т. д., производится на устройство, ассоциированное с этим логическим именем |
werror | Данное логическое имя определяет устройство, на которое будут выводиться все сообщения об ошибках |
wwarning | Устройство, ассоциированное с данным логическим именем, используется для отображения предупреждений |
wtrase | Вся отладочная информация посылается на устройство, ассоциированное с данным логическим именем |
Подробную информацию о логических именах и системе маршрутизации ввода/вывода можно найти в книге "CLIPS Reference Manual, Volume II, Advanced Programming Guide ".
Описание функций ввода/вывода, предоставляемых системой CLIPS, приведены в табл. 15.9.
Таблица 15.9. Функции ввода/вывода
Функция | Описание |
open | Открытие файла |
close | Закрытие файла |
printout | Вывод информации на заданное устройство |
read | Ввод данных с заданного устройства |
readline | Ввод строки с заданного устройства |
format | Форматированный вывод информации на заданное устройство |
rename | Переименование файла |
remove | Удаление файла |
Функция open предоставляет пользователю возможность открыть файл в функции или из правой части правила и присвоить файлу определенное логическое имя. Эта функция принимает три аргумента: имя открываемого файла, логическое имя, которое будет использоваться системой ввода/вывода CLIPS для связи с этим файлом и, наконец, параметр, определяющий способ открытия файла. Возможные варианты значений аргумента, определяющего способ открытия файла, приведены в табл. 15.10.
Таблица 15.10. Способы открытия файла
Значение аргумента | Описание |
"r" | Доступ только для чтения |
"w" | Доступ только для записи |
"r+" | Доступ для чтения и записи |
"а" | Добавление только в конец файла |
"wb" | Возможность записи двоичных файлов |
Дата добавления: 2021-12-14; просмотров: 245;