从pa中减去文件名
我正在使用LSP将CAD打印为PDF。以下是完整文件名路径的代码:
(setq pdf_名称(GetField“指定要绘制的文件名*.pdf”(getvar“SAVENAME”)“pdf”5))
i、 e.-i:\cadd\项目\计划。pdf
只捕获文件夹路径的代码是什么?换句话说,我如何从这个表达式中减去文件名,然后只获得文件夹名?
i、 e.-i:\cadd\项目\
非常感谢。 (getvar’dwgprefix) 这将获得包含DWG文件的文件夹的路径。
我正在将PDF文件保存到不同的文件夹中。
我的lisp将调用一个对话框,用户可以浏览PDF文件并将其保存到自己选择的文件夹中。
我需要获取此文件夹的路径,以便打开此文件夹。
所以,我需要从这个表达式中减去一个文件名,只得到文件夹名。
(vl-load-com)
(setq path "i:\\cadd\\project\\Plan.pdf")
(setq file (VL-FILENAME-BASE path))
(setq dir (VL-FILENAME-DIRECTORY path))
(setq ext (VL-FILENAME-EXTENSION path))
有多种方法可以检索文件夹路径。。。
但是既然你已经有了变量pdf\u的名字
(substr pdf_name 1 (- (strlen pdf_name)(strlen (getvar "dwgname"))))
你打败了我 这是我必须玩的东西,但我做到了!
非常感谢。
спасибо, земляк!! 这是一个即插即用的东西。
非常感谢。 谢谢你们两位及时有效的帮助!
请记住,这不是通用的,因为它假设文件名的长度与当前图形文件名的长度相同*只是让你意识到*
无论如何,有些已经发布,但这里还有一些:
(car (fnsplitl <filename>))
(vl-filename-directory <filename>)
(substr <filename> 1 (vl-string-position 92 <filename> 0 t)) ;; assumes "\\" used
(substr <filename> 1 (vl-string-position 92 (vl-string-translate "/" "\\" <filename>) 0 t))
乔治,你说得对
(substr <filename> 1 (vl-string-position 92 <filename> 0 t)) ;;;;; Lee Mac 2010
这个很酷
页:
[1]
2