Michaels 发表于 2022-7-6 10:14:54

将我的dwg保存到D:我的文件夹

你好
 
如何将dwg保存到驱动器D和特定文件夹。例如,我的文件夹。
 

(setq Fname (getstring T "\n new file name :"))
(setq x (strcat "D:\\My Folder\\" Fname ".dwg"))

 
为什么上面的文件路径不工作?
 
谢谢

Lee Mac 发表于 2022-7-6 10:28:15

“我的文件夹”存在吗?

JohnM 发表于 2022-7-6 10:34:53

请发布其余的代码,这样我们就可以看到发生了什么

Michaels 发表于 2022-7-6 10:42:06

是的,李,“我的文件夹”已经制作或存在于驱动器D中。
 
Johnm先生。这是到目前为止的代码。
 
(if (and (setq Fname (getstring T "\n new file name :"))
      (setq x (strcat "D:\\My Folder\\" Fname ".dwg"))
)
(command "_.save" x)
(princ)
)

 
李的问题是,是否也可以在保存dwg之前创建一个文件夹并将其包含在其中?
 
非常感谢大家。

Lee Mac 发表于 2022-7-6 10:49:12

也许是这样的。。。
 

(defun c:test ( / dir file )

(setq dir "D:\\My Folder")

(vl-mkdir dir)

(if (and (vl-file-directory-p dir)
          (snvalid (setq file (getstring t "\nEnter Filename: ")))
   )
   (vla-saveas (vla-get-ActiveDocument (vlax-get-acad-object))
   (strcat dir "\\" file ".dwg")
   )
)

(princ)
)

Michaels 发表于 2022-7-6 10:59:52

 
李,这是一部多么伟大的作品啊。
 
这真是太棒了。
 
请回答一个关于(snvalid)的问题。我读过,但我不能很好地理解它?
 
非常感谢你。
 
迈克尔

Lee Mac 发表于 2022-7-6 11:07:12

谢谢Michaels
 
snvalid检查字符串是否可用作符号表名,因此它会检查诸如/\*“等-帮助文件更好地记录了它。
 
(顺便说一句,我更新了上面的代码以包括.dwg扩展名)

Michaels 发表于 2022-7-6 11:14:30

 
这是正确的。您在发布5之前发布并在同一回复中重新更新的第一个代码,它不起作用,因为它是(saveas),我仅使用(save)命令进行了尝试,它与上一个未注明日期的代码一样好。
 
非常感谢李。

Tiger 发表于 2022-7-6 11:19:38

进一步了解李的教学生涯,请看这条线索。
页: [1]
查看完整版本: 将我的dwg保存到D:我的文件夹