Page 27 - AutoLISP и Visual LISP в среде AutoCAD
P. 27
2.10. РАБОТА С ФАЙЛАМИ
Функции ввода/вывода AutoLisp работают не с именами файлов, а с так
называемыми дескрипторами файлов, определяющими не только собственно
файл, но и режим доступа, и другие системные параметры. "Открыть файл" –
значит подготовить дескриптор файла к использованию его функциями
ввода/вывода AutoLisp.
Функция (open имя_файла режим) открывает файл и возвращает
дескриптор файла.
Режим Описание
r Открыть файл для чтения. Если файл с указанным
именем не существует, возвращается nil
w Открыть файл для записи. Если файл с указанным
именем не существует, создается и открывается
новый файл. Если такой файл уже существует, то
хранящиеся в нем данные будут утеряны
a Открыть файл для добавления. Если файл не
существует, то создается и открывается новый
файл. Если файл уже существует, то указатель
помещается в конце существующих данных
Пример:
(setq f1 (open "data1.dat" "r")) ; Открываем файл data1.dat для
; чтения и присваиваем
; дескриптор переменной f1
Все открытые файлы должны быть закрыты при помощи функции (close
дескриптор_файла).
После закрытия файла использование дескриптора невозможно.
Пример:
(close f1) ; Закрытие файла
Функция (findfile имя_файла) возвращает полное имя файла по
указанному основному имени файла. Такое полное имя можно передавать
функции open.
Пример:
(findfile "acad.exe") ; Возвращает полное имя файла acad.exe
; "C:\\Program Files\\Autodesk\\AutoCAD
; 2018\\acad.exe"
Для работы с файлами или стандартными устройствами ввода-вывода,
которыми является клавиатура и дисплей имеется ряд функций:
26