CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoLISP 开发指南

关于搜索文件(AutoLISP)

2023-1-6 12:07| 发布者: admin| 查看: 578| 评论: 0|来自: AutoCAD

摘要: 应用程序可以使用 查找文件函数来搜索特定的文件名。

应用程序可以使用该函数来搜索特定的文件名。findfile

应用程序可以指定要搜索的目录,也可以使用当前的 AutoCAD 库路径。

在以下示例代码中,在 AutoCAD 库路径中搜索acad.pgp文件:findfile

(setq pgpname "acad.pgp")
(setq fil (findfile pgpname))
(if fil
  (setq pgpname fil)
  (princ (strcat "\nCould not find file " pgpname ". " ))
)

如果调用 to 成功,则变量设置为完全限定的路径名字符串,如下所示:findfilerefname

; On Windows
"<drive>:\\Users\\<username>\\appdata\\roaming\\autodesk\\
 <product>\\<release>\\<language>\\support\\acad.pgp"

; or

; On Mac
"/Users/<username>/Library/Application Support/Autodesk/Roaming/
 <product>/<release>/<language>/support/acad.pgp"

指定路径名时,必须在反斜杠 (\) 前面加上另一个反斜杠,以便 AutoLISP 能够识别该路径名。或者,可以使用斜杠字符 (/) 作为目录分隔符。该函数显示一个对话框,其中包含指定目录中指定扩展名类型的可用文件的列表。这使 AutoLISP 例程能够访问“AutoCAD 获取文件”对话框,这是一个标准文件导航对话框。getfiled

调用 to采用确定对话框外观和功能的四个参数。应用程序必须指定以下字符串值,每个值可以是:标题,放置在对话框的顶部;默认文件名,显示在对话框底部的编辑框中;和扩展类型,用于确定在列表框中提供以供选择的初始文件。最后一个参数是一个整数值,它指定对话框如何与所选文件交互。getfilednil

以下示例用于让用户浏览目录结构并选择文件:getfiled

(defun C:DDIR ( )
  (setq *dfil (getfiled "Directory Listing" "" "" 2))
  (princ (strcat "\nVariable '*dfil' set to selected file " *dfil ))
 (princ)
)

变量设置为您选择的文件,然后其他 AutoLISP 函数可以使用该文件,或作为对文件名命令提示符的响应。若要使用此变量来响应命令提示符,请输入 !*dfil*dfil


路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 )

GMT+8, 2024-5-19 15:54

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部