2012-08-23 31 views
1

我的文件夹,看起来这样Clozure common lisp。如何在Windows上列出子目录?

c:/bar/ 
c:/bar/dir1 
c:/bar/dir2 
c:/bar/00.txt 
c:/bar/02.txt 

我可以列出文件

(directory "c:/bar/*.*") 
(#P"c:/bar/00.txt" #P"c:/bar/01.txt") 

,但有一个问题,上市子目录

(directory "c:/bar/*") 
NIL 

(directory "c:/bar/*/") 
NIL 

我做错了吗?

+2

请参阅'cl-fad'库 –

+0

在Clozure CL邮件列表上可能是最好的问题。 http://clozure.com/mailman/listinfo/openmcl-devel –

回答

1

使用:directories t在CCL:

(directory "C:/bar/*.*" :directories t) 

但是,如果你想写实现独立的代码,你应该听从梅耶的建议,并使用一个兼容层像cl-fad(例如,你想与大家分享库) 。

+0

并仅获取目录 - (目录“C:/ bar/* /”:目录t) – alex2k8