sailorcwx 发表于 2005-6-27 19:52:00

帮忙编程或给个提示

我想编写一个程序,实现以下功能


保存文件,文件名为一变量,格式为"文件名(日期).dwg"<BR>首先如果文件"文件名(日期).dwg"存在就设为保存,如果不存在就设为另存为<BR>我现在遇到的问题是会出现"文件名(旧日期).dwg",如果保存了旧出现"文件名(日期)(新日期).dwg"这样子。请教大家怎么把旧日期换成新日期。


知不知道我说什么?

xyp1964 发表于 2005-6-27 20:11:00

明天、后天……就会变成:


文件名(日期)(日期)(新日期).dwg


文件名(日期)(日期)(日期)(新日期).dwg


……

lockmyeye 发表于 2005-6-27 21:41:00

把日期定义为一个标准的格式,如20050627。并用特定的字符来分隔,我一般用"_",你这里是用"()")。


检查文件名是否以日期结束。


(IF(文件名以日期结束)<BR>  (IF(日期与当日相同)<BR>    (保存文件)<BR>    (另存文件,删除原文件)<BR>  )<BR>  (另存文件,删除原文件)<BR>)


<BR>

sailorcwx 发表于 2005-6-28 09:41:00

弄了一个晚上弄出来了


贴出来大家指点指点


;;保存时按时间更改名字保存 (2005.06.28 by 流浪水手)<BR>(defun c:YH_saveas()<BR>       (setq YH_DWGTITLED (getvar "DWGTITLED"))<BR>       (if (= YH_DWGTITLED 0) (ALERT "请先保存文件")<BR>       (progn<BR>       (setq YH_DWGload (getvar "DWGPREFIX"))<BR>       (setq YH_dwgname (getvar "dwgname"))<BR>       (setq YH_dwgnameleng (- (STRLEN YH_dwgname) 4))<BR>       (setq YH_dwgname (substr YH_dwgname 1 YH_dwgnameleng))<BR>       (setq YH_cdate (ITOA (fix (getvar "cdate"))))<BR>       (setq YH_year (substr YH_cdate 1 4))<BR>       (setq YH_mon (substr YH_cdate 5 2))<BR>       (setq YH_date (substr YH_cdate 7 2))<BR>       (if (&gt; YH_dwgnameleng 12)<BR>                       (progn<BR>                                       (setq YH_namedate (substr YH_dwgname (- YH_dwgnameleng 11)))<BR>                                       (if (and (= (substr YH_namedate 1 1) "[") (= (substr YH_namedate 6 1) "-") (= (substr YH_namedate 9 1) "-") (= (substr YH_namedate 12 1) "]"))<BR>        (setq YH_dwgname (substr YH_dwgname 1 (- YH_dwgnameleng 12)))<BR>        )<BR>                                       )<BR>                       )<BR>       (setq YH_cdate (strcat "[" YH_year "-" YH_mon "-" YH_date "]"))<BR>       (setq YH_file (strcat YH_dwgload YH_dwgname YH_cdate))<BR>       (command "saveas" "" YH_file)<BR>       )<BR>       )<BR>       (princ)<BR>)<BR>

sailorcwx 发表于 2005-6-28 09:44:00

还有个功能要实现


就是一个工程下来可定有1个多月,如果按我这样保存的话就有很多文件,我就想在保存后把旧文件挪到其他地方去,不知道这个功能lisp能不能实现?

cqnj023 发表于 2005-6-28 22:37:00

<FONT face=宋体>用vl-file-copy       ,vl-file-delete       </FONT>

cdinten 发表于 2011-6-7 20:28:58

你用的lisp语言啊
页: [1]
查看完整版本: 帮忙编程或给个提示