AutoLISP の入出力関数がアクセスできるようにファイルを開きます。
サポートされているプラットフォーム: Windows および Mac OS
(open filename mode)
タイプ: 文字列
開くファイルの名前と拡張子。ファイルの絶対パスを指定しなかった場合、AutoCAD の既定の図面フォルダを指定したものとみなされます。
タイプ: 文字列
ファイルを読み込みモード、書き出しモード、追加モードのいずれで開くかを指定します。次の文字のいずれか 1 つを含む文字列を指定してください。
r 読み込みモードで開きます。
w 書き出しモードで開きます。filename 引数のファイルが存在しない場合、新しいファイルが作成され、開かれます。filename 引数のファイルが既に存在する場合、既存のデータが上書きされます。開いたファイルに渡されたデータは、close 関数でそのファイルを閉じるまで、実際には書き出されません。
a 追加モードで開きます。filename 引数のファイルが存在しない場合、新しいファイルが作成され、開かれます。filename 引数のファイルが存在する場合、開いた後ポインタが既存のデータの終わりに移動するので、ファイルに書き出される新しいデータは既存のデータの後ろに追加されます。
mode 引数は、大文字でも小文字でもかまいません。AutoCAD 2000 より前のリリースでは、mode 引数は小文字でなければならなかったことに注意してください。
タイプ: ファイルまたは nil
ファイルを正常に開くことができた場合、open 関数は、他の入出力関数で使用可能なファイル ディスクリプタを返します。mode 引数に"r" が指定され、filename 引数のファイルが存在しない場合、open 関数は nil を返します。
次のように、既存のファイルを開きます。
(setq a (open "c:/datafiles/filelist.txt" "r")) #<file "c:/datafiles/filelist.txt">
次の例は、存在しないファイルに対して open 関数を実行しています。
(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">
次のように、既存のファイルを開きます。
(setq a (open "/datafiles/filelist.txt" "r")) #<file "/datafiles/filelist.txt">
次の例は、存在しないファイルに対して open 関数を実行しています。
(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">