📅  最后修改于: 2023-12-03 14:40:06.078000             🧑  作者: Mango
Clarion 是一种快速应用程序开发工具,它可以帮助开发者快速构建 Windows 应用程序。在 Clarion 中,获取目录列表是一项常见的任务。本文将介绍如何使用 Clarion 获取目录列表。
可以使用文件名标号来获取当前目录中的文件列表。以下是示例代码:
Program
MAP
END
DATA
END
CODE
OPEN(FILENAME(''))
LOOP
IF ERRORCODE()
BREAK
END
MESSAGE(FileName())
END
上述代码将打开当前目录中的所有文件,并使用 MESSAGE 语句显示每个文件的名称。
另一种获取目录列表的方法是使用 FindFirst 和 FindNext 函数。以下是示例代码:
Program
MAP
END
DATA
dirName STRING(256)
findDataPtr LONG
findResult LONG
END
CODE
dirName = ''
findDataPtr = 0
LOOP
findResult = FindFirst(dirName & '*.*', FIND_ATTRIBUTE_NORMAL, findDataPtr)
IF findResult = 0
MESSAGE(findDataPtr{FindData}.fileName)
ELSE
BREAK
END
findResult = FindNext(findDataPtr)
END
上述代码将显示当前目录中的所有文件和文件夹的名称,但不会递归子目录。
Clarion 还提供了一个名为 GetFileList 的函数,可以使用它来获取目录列表。以下是示例代码:
CONST
MaxFiles = 100
Program
MAP
END
DATA
files ARRAY(MaxFiles, 256)
count LONG
i LONG
END
CODE
count = GetFileList('', files)
FOR i = 1 TO count
MESSAGE(files{i})
END
上述代码将获取当前目录中的所有文件和文件夹的名称,并使用 MESSAGE 语句显示每个文件的名称。
使用 GetFileList 函数的优点是它可以递归子目录。您可以将一个目录名称作为参数传递给它,以获取该目录及其子目录中的所有文件列表。
总结:
本文介绍了在 Clarion 中获取目录列表的三种方法:使用文件名标号、使用 FindFirst 和 FindNext 函数和使用 GetFileList 函数。您可以根据需要,选择适合您应用程序的方法。