在 Clozure Common Lisp 中调用 (file-exists-p "somepath") 时出现“未定义的函数 FILE-EXISTS-P 调用参数 ...”错误,但在我看来,这个函数应该可用。我什至在使用 Mx apropos 时看到它。
我正在为 Windows 使用 LispBox。
有没有人知道可能出了什么问题,或者可能提出了一个我可以尝试找出问题的过程?
在 Clozure Common Lisp 中调用 (file-exists-p "somepath") 时出现“未定义的函数 FILE-EXISTS-P 调用参数 ...”错误,但在我看来,这个函数应该可用。我什至在使用 Mx apropos 时看到它。
我正在为 Windows 使用 LispBox。
有没有人知道可能出了什么问题,或者可能提出了一个我可以尝试找出问题的过程?
FILE-EXISTS-P 不是标准的 Common Lisp 函数或 Clozure Common Lisp 特定的函数。
相反,您可以使用标准 PROBE-FILE 函数(参见手册)来检查文件是否存在:
CL-USER> (probe-file "not-existant-file.lisp")
NIL
CL-USER> (probe-file "/Users/myname/temp.lisp")
#P"/Users/myname/temp.lisp"
请注意,标准中的未定义将函数应用于目录的结果,而 CCL 实现(至少在某些系统上)也会正确检查目录是否存在:
CL-USER> (probe-file "/Users/myname/")
#P"/Users/myname/"