|  | 
 
| 本帖最后由 hcwanz 于 2024-1-13 20:27 编辑 
 一个小东西,用于遍历文件夹中的所有文件。
 
     <火山程序 类型 = "通常" 版本 = 1 />
 
 包 火山.程序
 
 类 启动类 <公开 基础类 = 程序类>
 {
 变量 文管 <类型 = 文件查找类>
 变量 配置基 <静态 类型 = 文本型 值 = "D:\\配置\\">
 
 方法 启动方法 <公开 类型 = 整数>
 {
 调试输出 (文管.寻找文件 (配置基 + "*", 0, ))
 返回 (1)
 }
 
 方法 文件查找类_找到文件 <接收事件 类型 = 整数 注释 = "  每当找到任何一个文件或目录,在进行\"欲寻找文件的属性\"参数值所指定的" 注释 = "属性匹配检查之前,就会发送此事件."
 返回值注释 = "事件处理方法返回1表示认可此文件并将其返回,返回0表示不进行任何处理." 折叠2>
 参数 来源对象 <类型 = 文件查找类 注释 = "提供事件产生的具体来源对象">
 参数 标记值 <类型 = 整数 注释 = "用户调用\"挂接事件\"命令时所提供的\"标记值\"参数值,非此方式挂接事件则本参数值固定为0.">
 参数 欲寻找文件的属性 <类型 = 整数 注释 = "调用\"寻找文件\"所提供的\"欲寻找文件的属性\"参数值">
 参数 当前文件名称 <类型 = 文本型 注释 = "提供当前所找到的文件或目录的名称">
 参数 当前文件属性 <类型 = 整数 注释 = "  提供当前所找到的文件或目录的属性,为\"文件属性\"类中各个常量值的组合," 注释 = "可以使用\"位与\"关键字分别判断.">
 {
 变量 层标 <静态 类型 = 整数 值 = 0 注释 = "当前在几层子文件夹里">
 调试输出 (取重复文本 (">", 标记值) + 当前文件名称)
 如果 (当前文件属性 == 文件属性.子目录)  // 当前找到的文件是文件夹//遍历当前文件夹
 {
 层标 = 层标 + 1
 连接路径 (配置基, 当前文件名称, 配置基)  // 新欲遍历文件夹的绝对路径
 变量 子查找 <类型 = 文件查找类>
 挂接事件 (子查找, 层标)
 如果 ("" == 子查找.寻找文件 (配置基 + "\\*", 0))  // 进行当前文件夹的遍历。当返回空文本的时候,说明文件夹已经遍历完了。
 {
 配置基 = 取文件名路径 (配置基)  // 删除当前文件夹名,获得上级文件夹绝对路径。
 层标 = 层标 - 1
 }
 }
 返回 (0)
 }
 }
 
 
 
 
 
 | 
 |