自己借用了网上大神的一段代码,原代码存储的时候要选择图形范围,我给改成下面这样直接重命名,可是提示错误“输入的列表有缺陷”,是什么问题呢?(defunC:ft(/ANSWERENFLAGFLAG1INI...
自己借用了网上大神的一段代码,原代码存储的时候要选择图形范围,我给改成下面这样直接重命名,可是提示错误“输入的列表有缺陷”,是什么问题呢?
(defun C:ft (/ ANSWER EN FLAG FLAG1 INITDIR NEWDNAME EE)
(setq ee (GETVAR "DWGname"))
(if (setq Initdir (getvar "dwgprefix"))
nil
(progn (princ "\n 文件未保存,不能分图") (exit))
)
(setq flag1 T)
(while (and flag1
(setq en (entsel "\n >拾取文件名 "))
(setq en (nentselp (cadr en)))
(setq NewDName (cdr (assoc 1 (entget (car en)))))
(equal (type NewDName) 'STR)
)
(if (findfile (strcat Initdir NewDName ee))
(setq flag T)
)
(while flag
(princ
(strcat "\n 文件名" NewDName "已经存在,请重输入文件名")
)
(setq NewDName (getstring "\n???输入文件名: "))
(if (findfile (strcat Initdir NewDName ee))
nil
(setq flag nil)
)
)
(vl-file-rename (strcat Initdir ee) (strcat Initdir NewDName ee))
展开