FTP客户端--实现FTP文件的上传下载功能

现在是2017.6.16的1点多,这几天刚好做了个FTP客户端的计网实验,就把思路过程和源码发上来吧!
一.设计思路:首先,登陆指定的FTP服务器(指定服务器的IP和用户名,密码,端口号若无就默认为21)并验证,然后在文本区显示出服务器的文件目录(此处用到 了递归和JTree);选择文件及路径,进行文件的上传和下载操作 。
注:这里的FTP服务器可系统自己利用IIS设置可访问的FTP服务器,注意用户的权限要包括读取和写入,这样才能实现上传功能;
二.java文件的目录和具体要导入的包如下:
java文件目录
三.设计与开发环境与步骤:
(1)首先建立图形界面,可以借助swing界面绘制工具,建立JFrame框架,设置好比例及界面位置,部分界面代码如下:
(2)2设置各类文本监听事件(如用户名,密码框的内容获取)和按钮监听事件(如登陆,注销上传下载的监听)
1 )登陆函数:
这里写图片描述
2)利用递归思想获取服务器的文件目录函数:
这里写图片描述
3)下载文件:
这里写图片描述
4)上传文件
这里写图片描述
4.实验最终效果
(1)如下所示,运行程序,主界面如下:
这里写图片描述
(2)填入要访问的服务器IP,及用户名和密码,点击登陆,提示登陆成功;
这里写图片描述
可看到服务器的文件目录如下:
这里写图片描述
(3)接下来,测试文件的下载功能;选中其中一个目录的视频mp4文件,点击下载,则可看到文件下载成功,在本地指定路径也可看到下载成功的文件;
这里写图片描述
下载到本地的文件
这里写图片描述
(4)测试文件的上传功能;
这里写图片描述
这里写图片描述
刷新可看到上传的文件:
这里写图片描述
(5)测试账号注销功能;点击注销可看到账号注销成功
这里写图片描述

四、开发小结:(开发中出现问题的解决方法,心得体会等)
1.出现问题:
(1)目录JTree不知道如何添加进TextArea中;
解决方法:通过如下方法将目录视图显示出来:
这里写图片描述
(2)对于中文路径的文件下载,上传下载时会显示出现乱码,导致下载上传失败;
解决方法:通过如下方法改变下FTP的编码:
这里写图片描述

PS:鉴于源码太长,我就不一一发了(其实我是不知道怎么全部发上来,一个一个java文件贴上来又怕博客太长各位没耐心,百度链接又怕失效),如果有需要的可以留言邮箱,我把源码发给你,快2点了,睡觉了~~~晚安好梦!