欢迎来到天天文库
浏览记录
ID:47745477
大小:809.50 KB
页数:34页
时间:2019-11-09
《基于C#的FTP客户端设计与实现》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、《基于C#的FTP客户端实现》实验课程:C#期末大作业学生姓名:学号:专业班级:指导老师:完成日期:2014年12月20日目录摘要1引言11.FTP协议分析11.1.FTP的工作原理11.2.FTP工作模式21.3.FTP传输模式42.FTP客户端总体设计52.1.设计目的及开发环境52.1.1.设计目的与.NET环境简介52.1.3.FtpWebRequest类62.2.系统UML分析62.2.1.FTP客户端用例图62.2.2.FTP客户端主要序列图与活动图82.2.4.FTP客户端类图122.3.系统功能模块152.3.1.系统整体框架
2、图152.3.2.客户端功能模块152.3.3.客户端界面设计162.4.数据流程图192.4.1.客户端连接流程图192.4.2.上传子模块流程图212.4.3.下载子模块流程图223.FTP客户端程序实现233.1.WPF界面设计233.1.1.首页界面详细设计233.1.2.文件传输界面详细设计243.1.3.操作历史记录显示界面详细设计263.1.4.常用地址查询模块设计263.2.功能模块实现273.2.1.连接服务器273.2.2.显示服务器端文件清单283.2.3.上传文件293.2.4.下载文件293.2.5.查询历史记录30
3、3.2.6.常用地址管理314.数据库建设314.1.数据库表结构314.2.数据库关系模型324.3.数据库ER图334.4.数据库建表语句335.结语34参考文献3532基于C#的FTP客户端设计与实现图1-1FTP工作模式图上图中用户PI开始控制连接,控制连接与Telnet协议很象。在开始阶段,标准FTP命令由用户PI产生并通图1-2过控制连接传送到服务器进程。服务器PI向用户PI返回标准应答。FTP命令指定数据连接参数和文件系统操作。用户DTP在特定数据端口侦听,服务器开始数据连接并以指定的参数开始数据传输。数据端口不必在开始FTP命
4、令的机器上,但用户或用户FTP进程必须确定它在指定的数据端口上侦听.这个数据连接是全双工的。1.FTP客户端总体设计1.1.设计目的及开发环境1.1.1.设计目的32FTP早已应用在网络的各个方面,比如我们在访问网络上的资源时,经常会遇到需要连接FTP服务器来下载,或者你制作了一个网站,想要将其上传至服务器,让大家能够访问它,这个时候就会用到FTP客户端。虽然平时使用windows自带的IE浏览器即可实现对FTP服务器的访问,但是IE只是个很粗糙的FTP客户端。IE浏览器在6.0以下的版本不支持PASV方式访问服务器,而且IE浏览器在登录FT
5、P服务器的时候,无法查看返回的信息,在出错的时候,无法找到错误的原因,因此在使用上很不方便。现在大多数的FTP客户端软件都是收费版的,而且以英文版居多,使用上操作很复杂,目前流行的有CoreFtp、AceFtp、FtpVoyager等,但是大多数用户并不习惯使用这些软件。本文所设计的FTP客户端则适合大多数用户使用,界面设计的很简单,使用户可以一目了然,而且具备FTP客户端的基本功能,可以作为下载、上传文件的工具来使用。1.1.1.NET环境简介VisualStudio.NET是一个开发和运行软件的新环境,便于开发基于网络的服务,拥有丰富的运
6、行库,支持多种编程语言编写的组件,具有跨语言平台的互操作能力。C#是.NET平台中最重要的语言,它本身没有类库,而是使用.NET框架所提供的统一类库,用户也可以定义特定域的属性,并将它们应用于任何语言元素如类、接口等,所以对网络应用程序提供完整的支援,这使得程序员能够在新的微软.NET平台上快速开发出种类丰富的应用程序。1.1.2.FtpWebRequest类C#.NET类库的存在使它适合于一个不断发展的环境。在类库中我们可以自由地加入新的方法和实例变量而不会影响用户程序的执行。.NET平台封装了实现FTP功能的一些基础类,位于命名空间为Sy
7、stem.Net下的FtpWebRequest类用于实现文件传输协议(FTP)客户端的一些基本功能。二次封装了类FFP_Class,其成员包括stringtipserveriP(服务器地址)、stringftpUseriD(登陆账号)、stringftpPassword(登录密码)和FtpWebRequestreqFTP。本文所使用的FtpWebRequest类的构造方法和主要方法如下:FtpWebRequestreqFtp=(FtpWebRequest)FtpWebRequest.Create(newUri(Path));此构造函数利用给出
8、的主机名建立一条FTP连接,目的连接地址为Path所指定的地址,并建立URI对象。reqFtp.UseBinary=true;这条程序指定传输类型为Binary。r
此文档下载收益归作者所有