Opens a file for access by the AutoLISP I/O functions
Supported Platforms: Windows and Mac OS
(open filename mode [encoding])
Type: String
Name and extension of the file to be opened. If you do not specify the full path name of the file, open assumes you are referring to the AutoCAD default drawing directory.
Type: String
Indicates whether the file is open for reading, writing, or appending. Specify a string containing one of the following letters:
r Open for reading.
w Open for writing. If filename does not exist, a new file is created and opened. If filename already exists, its existing data is overwritten. Data passed to an open file is not actually written until the file is closed with the close function.
a Open for appending. If filename does not exist, a new file is created and opened. If filename already exists, it is opened and the pointer is positioned at the end of the existing data, so new data you write to the file is appended to the existing data.
The mode argument can be uppercase or lowercase.
Type: String
Indicates the character encoding to use when reading the file. When a value isn't provided for the argument, the file is assumed to contain multibyte character set (MBCS) which is the legacy behavior.
Use one of the following values to specify a different character encoding:
utf8 UTF-8
utf8-bom UTF-8 with Byte Order Marks
Type: File or nil
If successful, open returns a file descriptor that can be used by the other I/O functions. If mode "r" is specified and filename does not exist, open returns nil.
Releases:
AutoCAD 2021
AutoCAD 2000
Open an existing file:
(setq a (open "c:/datafiles/filelist.txt" "r")) #<file "c:/datafiles/filelist.txt">
The following examples issue open against files that do not exist:
(setq f (open "c:\\my documents\\new.tst" "w")) #<file "c:\\my documents\\new.tst"> (setq f (open "nosuch.fil" "r")) nil (setq f (open "logfile" "a")) #<file "logfile">
Open an existing file:
(setq a (open "/datafiles/filelist.txt" "r")) #<file "/datafiles/filelist.txt">
The following examples issue open against files that do not exist:
(setq f (open "/my documents/new.tst" "w")) #<file "/my documents/new.tst"> (setq f (open "nosuch.fil" "r")) nil (setq f (open "logfile" "a")) #<file "logfile">