创建txt文件方法
本帖最后由 自贡黄明儒 于 2011-12-16 08:21 编辑;我想把自己的计算结果存入txt文件,显示给用户看.为方便起,用户不用输入文件名等.
;问题一 (vl-catch-all-error-message catchit)问题是返回了错误,问题在哪儿呢?
;问题二 该死的FileSystemObject给我们带来了方便,同时也带来了烦恼,想说爱她不容易。<微软Vbscript手册vbs.chm>中的一些参数,在lisp中到底该怎么写?(nonsmall那个VBA-LISP.lsp好象不能告诉我们答案)
;;;创建txt文件 方法1
;;;(setq m (vlax-create-object "scripting.FileSystemObject"))
;;;(vlax-dump-object m t)
(defun CreateTXTfile (/ FIL FILENAME OBJ)
(vl-load-com)
(setq filename (strcat (getvar "dwgprefix") (cadr (fnsplitl (getvar "dwgname"))) ".txt"))
(setq obj (vlax-create-object "scripting.FileSystemObject"))
;;(setq catchit (vl-catch-all-apply '(vlax-invoke (vlax-create-object "scripting.FileSystemObject") "CreateTextFile" filename :vlax-true :vlax-false)))
;;(vl-catch-all-error-message catchit)问题是返回了错误?
(setq fil (vlax-invoke obj "CreateTextFile" filename :vlax-true :vlax-false))
(vlax-release-object obj)
(vlax-release-object fil)
(command "notepad" filename);显示文件
)
;;;创建txt文件 方法2
(defun CreateTXTfile2 (/ FILENAME STRFILEFULLNAME)
(vl-load-com)
(setq filename (strcat (getvar "dwgprefix") (cadr (fnsplitl (getvar "dwgname"))) ".txt"))
(setq strFileFullName (vl-filename-mktemp filename))
;(setq objectFile (open strFileFullName "w"));打开文件写
(.....)
;(close objectFile);关闭文件
;(command "notepad" strFileFullName);显示文件,但要问用户是否创始
;(vl-file-delete strFileFullName);是临时文件,不用也没关系
)
省事的套用法
DosLib
http://download.rhino3d.com/McNeel/1.0/doslib/
Syntax
(dos_tempfile)
Command: (dos_tempfile)
"C:\\DOCUME~1\\User0\\LOCALS~1\\Temp\\~ac5A04.tmp"
(defun C:CT ()
(vl-load-com)
(setq filename "c:\\zas.txt")
(setq SYS (vlax-get-or-create-object "Scripting.FileSystemObject"))
(setq txt (vlax-invoke-methodsys "CreateTextFile" filename t t))
(vlax-release-object SYS)
(vlax-release-object TXT)
(command "notepad" filename);显示文件
)
楼主是否知道怎样使用读取的参数??
页:
[1]