开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 35194|回复: 51
收起左侧

[技术专题] 易语言 简单的FTP上传下载等功能,一看就懂。

[复制链接]
发表于 2016-11-28 15:43:10 | 显示全部楼层 |阅读模式   山东省东营市
本帖最后由 Doubleehcz 于 2016-11-28 15:44 编辑

    现在感觉时间越来越不够用的了,想发一些小的技术贴子,都感觉时间不够用。我认为FTP上传下载这种功能太常用了,今天抽出来一点时间发一个关于FTP上传下载等功能的帖子。我也是根据易语言知识库API的例子做出来的,只是自己增加了一些权限功能。首先把整体的界面贴出来,然后就是每个按钮的事件,我就不发源码了。大家尝试去做,不懂得可以问我。大家共同进步。
   
       预览.png
  1,上面是预览界面,显示用的是超级列表框,首先我们要连接FTP服务器(代码如下)
  
.版本 2
pp = 连接FTP服务器 (“服务器地址”, “用户名”, “密码”, 21, )       ‘自己应该会部署一个FTP服务器,不会的可以百度一下,很简单。
如果 (pp = )
信息框 (“连接成功”, 0, , )
标签1.标题 = “提示:”“你的附件功能正常,请放心使用”
标签1.文本颜色 = #绿色
如果 (FTP置现行目录 (name2))                                         ‘这个我是用来判断目录的,每个人登陆的时候只能进入自己的目录。这个很好懂
FTP内容读取 ()                                                                            ‘这是一个子程序,在超级列表框中用来显示目录中文件名称,大小,修改时间,属性的
FTP创建目录 (name2)
信息框 (“创建成功”, 0, , )
FTP内容读取 ()

信息框 (“连接失败”, 0, , )
标签1.标题 = “提示:”“目前功能出现问题,请上报管理员”
标签1.文本颜色 = #红色


i支持库列表   支持库注释   
internet互联网支持库


2,FTP创建目录()这个子程序的代码,文件列表框就是超级列表框
  
子程序名返回值类型公开备 注
FTP内容读取  
变量名类 型静态数组备 注
循环记录变量整数型 
已分割文本文本型0
文件列表框.全部删除 ()
计次循环首 (FTP目录列表 (“*.*”, , 文件名数组, 文件属性组, 文件尺寸组, 文件时间组), 循环记录变量)
已分割文本 = 分割文本 (文件名数组 [循环记录变量], “.”, )  ' 取出文件扩展名
判断 (文件属性组 [循环记录变量] = 16)  ' 判断是否是一个目录
文件列表框.插入表项 (-1, 文件名数组 [循环记录变量], 5, -1, 0, 文件属性组 [循环记录变量])
判断 (已分割文本 [取数组成员数 (已分割文本)]“html” 已分割文本 [取数组成员数 (已分割文本)]“htm”)  ' 如果它的扩展名是网页格式,就在文件列表框中显示一个IE图标
文件列表框.插入表项 (-1, 文件名数组 [循环记录变量], 4, -1, 0, 文件属性组 [循环记录变量])
判断 (已分割文本 [取数组成员数 (已分割文本)]“exe”)  ' 如果它是一个程序,那么在列表框中给它加一个程序图标
文件列表框.插入表项 (-1, 文件名数组 [循环记录变量], 3, -1, 0, 文件属性组 [循环记录变量])
判断 (已分割文本 [取数组成员数 (已分割文本)]“txt”)  ' 如果它的扩展名是txt(文本型),则给它一个记事本图标
文件列表框.插入表项 (-1, 文件名数组 [循环记录变量], 1, -1, 0, 文件属性组 [循环记录变量])
判断 (已分割文本 [取数组成员数 (已分割文本)]“rar”)  ' 如果它是一个扩展名为rar(RAR压缩文件)的文件,那么给它加上一个RAR图标
文件列表框.插入表项 (-1, 文件名数组 [循环记录变量], 0, -1, 0, 文件属性组 [循环记录变量])
文件列表框.插入表项 (-1, 文件名数组 [循环记录变量], 2, -1, 0, 文件属性组 [循环记录变量])  ' 如果在前面那些判断中以外的扩展名,就给它一个未知类型图标
文件列表框.置标题 (循环记录变量 - 1, 1, 到文本 (文件尺寸组 [循环记录变量]))
文件列表框.置标题 (循环记录变量 - 1, 2, 到文本 (文件时间组 [循环记录变量]))
文件列表框.置标题 (循环记录变量 - 1, 3, 到文本 (文件属性组 [循环记录变量]))
计次循环尾 ()


i支持库列表   支持库注释   
iext扩展界面支持库一
internet互联网支持库

3,首先是 向上.png 的功能代码:

  
变量名类 型静态数组备 注
上一级目录文本型 
当前目录文本型 
符号位置整数型/号的最后位置
当前目录 = FTP取现行目录 ()
调试输出 (当前目录)
如果 (当前目录 = “/” + name2)                               ‘用来限制向上的功能的,也就是说每个人有每个人的文件夹,
信息框 (“已是顶级目录”, 0, , )
符号位置 = 倒找文本 (当前目录, “/”, , )
上一级目录 = 取文本左边 (当前目录, 符号位置)
FTP置现行目录 (上一级目录)
FTP内容读取 ()


i支持库列表   支持库注释   
internet互联网支持库
spec特殊功能支持库

4 。然后就是 删除文件.png 删除目录.png 创建目录.png 的功能,很简单,代码就一块打出来了
  
子程序名返回值类型公开备 注
_删除文件按钮_被单击  
FTP删除文件 (文件列表框.取标题 (文件列表框.现行选中项, 0))
FTP内容读取 ()
子程序名返回值类型公开备 注
_删除目录按钮_被单击  
FTP删除目录 (文件列表框.取标题 (文件列表框.现行选中项, 0))
FTP内容读取 ()
子程序名返回值类型公开备 注
_创建目录按钮_被单击  
变量名类 型静态数组备 注
新目录名文本型 
如果真 (输入框 (“输入新目录名”, “创建目录”, “新建文件夹”, 新目录名, #输入文本 ))  ' 判断输入框是否按了确定按钮
FTP创建目录 (新目录名)
FTP内容读取 ()


i支持库列表   支持库注释   
internet互联网支持库
iext扩展界面支持库一


5。最后是 上传.png 下载.png 的功能代码:
  
子程序名返回值类型公开备 注
_上传按钮_被单击  
变量名类 型静态数组备 注
远程文件名文本型 
如果真 (打开文件对话框.打开 () 打开文件对话框.文件名 ≠ “”)  ' 判断是否打开了文件
远程文件名 = 取文本右边 (打开文件对话框.文件名, 取文本长度 (打开文件对话框.文件名)倒找文本 (打开文件对话框.文件名, “\”, , ))  ' 取出被打开的文件名
FTP文件上传 (打开文件对话框.文件名, 远程文件名, )
FTP内容读取 ()
子程序名返回值类型公开备 注
_下载按钮_被单击  
如果真 (文件列表框.现行选中项 ≠ -1 文件列表框.取表项数值 (文件列表框.现行选中项) ≠ 16 保存文件对话框.打开 () 保存文件对话框.文件名 ≠ “”)  ' 判断保存对话框是否点保存;判断是否输入了保存的文件名;判断当前选中的文件是不是文件夹类型的文件。
FTP文件下载 (文件列表框.取标题 (文件列表框.现行选中项, 0), 保存文件对话框.文件名, )


i支持库列表   支持库注释   
internet互联网支持库
iext扩展界面支持库一


好了  功能已经贴出来,大家尝试一些。如果发现什么缺陷,大家 给我指出来,谢谢。
   


评分

参与人数 1精币 +1 收起 理由
1371418042 + 1 很赞同,谢谢!

查看全部评分


发表于 2024-8-16 20:22:57 | 显示全部楼层   山东省临沂市
谢谢分享谢谢谢谢
回复 支持 反对

使用道具 举报

签到天数: 1 天

发表于 2024-8-7 07:40:28 | 显示全部楼层   辽宁省大连市
学习了谢谢
回复 支持 反对

使用道具 举报

发表于 2024-2-28 10:29:12 | 显示全部楼层   湖南省衡阳市
可以非常拉丝,学习到了
回复 支持 反对

使用道具 举报

发表于 2023-12-25 02:43:04 | 显示全部楼层   浙江省嘉兴市
谢谢分享
回复 支持 反对

使用道具 举报

结帖率:0% (0/1)
发表于 2022-9-29 16:32:42 | 显示全部楼层   甘肃省兰州市
对我学习有帮助
回复 支持 反对

使用道具 举报

发表于 2022-9-7 09:19:14 | 显示全部楼层   广东省云浮市
没有源码?
回复 支持 反对

使用道具 举报

结帖率:75% (3/4)
发表于 2022-7-29 14:00:18 | 显示全部楼层   天津市天津市
可以可以,学习到了
回复 支持 反对

使用道具 举报

发表于 2022-6-26 13:21:37 | 显示全部楼层   河北省廊坊市
编码如何处理,为何我的下载失败,
回复 支持 反对

使用道具 举报

结帖率:32% (6/19)

签到天数: 1 天

发表于 2022-5-17 12:00:06 | 显示全部楼层   贵州省黔东南苗族侗族自治州
回帖是美德
回复 支持 反对

使用道具 举报

发表于 2022-5-5 12:37:27 | 显示全部楼层   河南省郑州市
较广泛国防军空军好几个咖啡馆含有咖啡碱
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表