获取文件名列表
我需要在文件夹中获得一个带有特定扩展名的文件名的列表。例子:
文件夹:c:\temp\drawings
扩展名:txt
结果:
(name1 name2 name3 ..... n)
非常感谢。 确保有两个反斜杠或一个正斜杠,如下所示;
(vl-directory-files "c:\\temp\\drawings" "*.txt" 1)
在谷歌上搜索DosLib
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwix2KC6ud3PAhXJVT4KHXx1ClwQFggcMAA&url=http%3A%2F%2Fwww.en.na.mcneel.com%2Fdoslib.htm&usg=AFQjCNEiiCL_-fUuMGCIY2LFD0ZadTttKw&sig2=nPsrEKbp23jCFI3XKNW81A&bvm=bv。135974163,d.cWw
它比vl强大得多????? 非常感谢你。
使用Tharwat的表达式。太完美了。
谢谢你,大卫。 对于无限深度的子文件夹。。。
(defun _findfiles ( libraryrootprefix filenamepattern / subs subfolderss subfs folders fl ) ;;; (_findfiles "F:\\ACAD ADDONS-NEW\\" "profile*.lsp")
(defun subs ( folder )
(setq subfolders (vl-remove "." (vl-remove ".." (vl-directory-files folder nil -1))))
subfolders
)
(defun subfolderss ( rootfolder / subfolders )
(subs rootfolder)
(if subfolders
(foreach sub subfolders
(subfolderss (strcat rootfolder "\\" sub))
(setq subfs (cons (strcat rootfolder "\\" sub) subfs))
)
)
)
(setq libraryrootprefix (vl-string-right-trim "\\" libraryrootprefix))
(subfolderss libraryrootprefix)
(setq folders (append (list libraryrootprefix) subfs))
(foreach folder folders
(foreach x (vl-directory-files (strcat folder "\\") filenamepattern 1)
(setq fl (cons (strcat folder "\\" x) fl))
)
)
(reverse fl)
)
HTH,M.R。 不客气。 非常感谢你,马尔科。非常有趣。我会试试你的习惯。
非常感谢。
页:
[1]