明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2697|回复: 6

知道了一个文件路径,我们怎样得到其下的所有文件和子目录?

[复制链接]
发表于 2003-6-27 09:50:00 | 显示全部楼层 |阅读模式
我们讨论了怎样选择路径的问题,已经有了满意的答案,大家可以查阅相关主题。
我现在的问题是:我们怎样才能得到指定目录下的所有文件和其下的子目录呢?
当然,取得文件的方法有这个函数   vl-directory-files    ,可是,不能得到子目录。
请不要用(command  "sh"  ......),因为,此时我的对话框没有关闭,禁用command。

          再次感谢同仁们的帮忙!
"觉得好,就打赏"
还没有人打赏,支持一下
 楼主| 发表于 2003-6-27 10:08:00 | 显示全部楼层
不好意思,问题已经解决!那个命令可以列出子目录,只是我们要判断而已。
发表于 2003-6-27 14:07:00 | 显示全部楼层

到底怎样解决?

到底怎样解决?能说出来吗?
发表于 2003-6-27 14:11:00 | 显示全部楼层
直接用vl-directory-files

——————《autolisp参考》————————————————

(vl-directory-files  [directory pattern directories])

参数

directory

字符串,指定要收集文件的目录。如果未指定该参数或参数为 nil,vl-directory-files 使用当前目录。

pattern

字符串,包含文件名的 DOS 方式。如果未指定该参数或参数为 nil,vl-directory-files 假定为 "*.*"

directories

整数型,指定返回的表中是否包含路径名。可以指定下列值之一:
-1  仅列出目录。
0   列出文件和目录(缺省值)。
1   仅列出文件。

返回值

文件和路径列表。如果没有符合指定方式的文件,则返回 nil。

样例

_$ (vl-directory-files "c:/acadwin" "acad*.exe")

("ACAD.EXE" "ACADAPP.EXE" "ACADL.EXE" "ACADPS.EXE")

_$ (vl-directory-files "e:/acadwin" nil -1)

("." ".." "SUPPORT" "SAMPLE" "ADS" "FONTS" "IGESFONT" "SOURCE" "ASE")

_$ (vl-directory-files "E:/acad13c4" nil -1)

("." ".." "WIN" "COM" "DOS")
 楼主| 发表于 2003-6-27 14:45:00 | 显示全部楼层
完全同意!
用 vl-file-directory-p  "filename"      可判断文件名是否包含目录。
发表于 2003-6-27 17:37:00 | 显示全部楼层

谢谢meflying

谢谢meflying,又向你们学到不少.
发表于 2022-8-17 17:56:26 | 显示全部楼层
学习了,多谢!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-15 14:36 , Processed in 0.182536 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表