Clean3.0 获取目录内容
Clean3.0 get directory contents
我正在使用 Cleanide 作为 Clean3.0
编程语言。
我想做的是实现一个函数来接收我系统中的目录名称,以及 return 该目录中所有文件的列表。
我不知道这样的函数的定义是否需要像File -> [string]
或者别的什么,即使那个目录是一个文件也许这不是Clean
的开发者的意思。 ..
非常感谢!
此功能在 StdEnv 环境中不可用,但有两个库可以提供帮助:
Directory library contains a module Directory里面有个函数getDirectoryContents :: !Path !*env -> (!(!DirError, [DirEntry]), !*env) | FileSystem env
.
Platform library contains a module System.Directory里面有个函数readDirectory :: !FilePath !*w -> (!MaybeOSError [FilePath], !*w)
.
在这两种情况下,第一个参数是目录路径,第二个参数是 *World
,这是 Clean 执行不纯操作的典型方式(参见 chapter 9 of the language report)。
代码示例
与目录:
import Directory
Start w
# (dir,w) = getDirectoryContents (RelativePath []) w
= dir
有平台:
import System.Directory
Start w
# (dir,w) = readDirectory "." w
= dir
我正在使用 Cleanide 作为 Clean3.0
编程语言。
我想做的是实现一个函数来接收我系统中的目录名称,以及 return 该目录中所有文件的列表。
我不知道这样的函数的定义是否需要像File -> [string]
或者别的什么,即使那个目录是一个文件也许这不是Clean
的开发者的意思。 ..
非常感谢!
此功能在 StdEnv 环境中不可用,但有两个库可以提供帮助:
Directory library contains a module Directory里面有个函数
getDirectoryContents :: !Path !*env -> (!(!DirError, [DirEntry]), !*env) | FileSystem env
.Platform library contains a module System.Directory里面有个函数
readDirectory :: !FilePath !*w -> (!MaybeOSError [FilePath], !*w)
.
在这两种情况下,第一个参数是目录路径,第二个参数是 *World
,这是 Clean 执行不纯操作的典型方式(参见 chapter 9 of the language report)。
代码示例
与目录:
import Directory
Start w
# (dir,w) = getDirectoryContents (RelativePath []) w
= dir
有平台:
import System.Directory
Start w
# (dir,w) = readDirectory "." w
= dir