|
|
发表于 2025-8-31 20:57:36
|
显示全部楼层
湖北省黄冈市
|
.版本 2 .支持库 internet .支持库 spec .程序集 窗口程序集_启动窗口 .局部变量 FTP句柄, 整数型 ' FTP连接句柄 .局部变量 服务器地址, 文本型 .局部变量 端口, 整数型 .局部变量 用户名, 文本型 .局部变量 密码, 文本型 .局部变量 目标文件夹, 文本型 ' FTP上的目标文件夹 .局部变量 本地保存路径, 文本型 ' 本地保存目录 .局部变量 文件列表, 文本型, , "0" ' 存储FTP文件夹中的文件列表 .局部变量 i, 整数型 ' 循环变量 .局部变量 找到文件, 逻辑型 ' 是否找到目标文件 .子程序 __启动窗口_创建完毕 ' 初始化FTP参数(请填写实际的用户名和密码) 服务器地址 = “10.4.204.241” 端口 = 21 ' FTP默认端口 用户名 = “” ' 请输入FTP用户名 密码 = “” ' 请输入FTP密码 目标文件夹 = “/08红安县局/” ' FTP上的目标文件夹路径(注意斜杠方向) 本地保存路径 = 取运行目录 () + “\指令文件夹\” ' 本地保存目录 ' 创建本地保存目录(如果不存在) .如果 (目录是否存在 (本地保存路径) = 假) 创建目录 (本地保存路径) .如果结束 ' 开始执行FTP下载流程 执行FTP下载 () .子程序 执行FTP下载, , , 主流程:连接FTP→查找文件→下载 ' 1. 连接FTP服务器 FTP句柄 = 连接FTP服务器 (服务器地址, 端口, 用户名, 密码, ) .如果 (FTP句柄 = 0) 信息框 (“FTP连接失败!请检查地址、端口、账号密码是否正确。”, 0, “错误”) 返回 () .如果结束 信息框 (“FTP连接成功!”, 0, “提示”) ' 2. 进入目标文件夹(08红安县局) .如果 (FTP改变目录 (FTP句柄, 目标文件夹) = 假) 信息框 (“无法进入目标文件夹:” + 目标文件夹 + “,请检查路径是否正确。”, 0, “错误”) 关闭FTP连接 (FTP句柄) ' 关闭连接 返回 () .如果结束 ' 3. 获取文件夹中的所有文件列表 .如果 (FTP列举文件 (FTP句柄, 文件列表, 真) = 假) 信息框 (“获取文件列表失败!”, 0, “错误”) 关闭FTP连接 (FTP句柄) 返回 () .如果结束 ' 4. 查找含“预警”关键词的xlsx文件并下载 找到文件 = 假 .计次循环首 (取数组成员数 (文件列表), i) ' 筛选条件:文件名包含“预警”且扩展名为.xlsx .如果 (寻找文本 (文件列表 [i], “预警”, 1, 假) > 0 且 取文本后缀 (文件列表 [i]) = “xlsx”) ' 找到目标文件,执行下载 .如果 (FTP下载文件 (FTP句柄, 文件列表 [i], 本地保存路径 + 文件列表 [i], 真) = 真) 信息框 (“文件下载成功!” + 换行 + “保存路径:” + 本地保存路径 + 文件列表 [i], 0, “成功”) 找到文件 = 真 ' 如需下载所有符合条件的文件,可删除下面的跳出循环 跳出循环 () ' 只下载第一个找到的文件 .否则 信息框 (“文件下载失败:” + 文件列表 [i], 0, “错误”) .如果结束 .如果结束 .计次循环尾 () ' 5. 处理未找到文件的情况 .如果 (找到文件 = 假) 信息框 (“在文件夹‘” + 目标文件夹 + “’中未找到含‘预警’关键词的xlsx文件。”, 0, “提示”) .如果结束 ' 6. 关闭FTP连接 关闭FTP连接 (FTP句柄) .子程序 _按钮1_被单击, , , 手动触发下载(可选) 执行FTP下载 () |
|