客户端基于c 的ftp客户端设计教(学)案实现

ftp客户端  时间:2021-03-16  阅读:()

基于C#的FTP客户端实现》实验课程 c#期末大作业________学生姓名

__________________________

学号

_____________________________

专业班级

__________________________

指导老师

__________________________

完成日期 2014年12月20日

摘要. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误丄••未定义书签。

弓丨言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .错误丄. .未定义书签。

1.F TP协议分析 错•误! . .未定义书签。

1.1.F TP的工作原理 错误! . .未定义书签。

1.2.F TP工作模式 错误. . .未定义书签。

1.3.F TP传输模式 错误. . .未定义书签。

2.F TP客户端总体设计

2.1.设计目的及开发环境

2.1.1.设计目的与.NET环境简介

2.1.3.Ftp Web Re que st类

2.2.系统UM L分析 3.

2.2.1.F TP客户端用例图

2.2.2.F TP客户端主要序列图与活动图

2.2.4.F TP客户端类图

2.3.系统功能模块 1.4

2.3.1.系统整体框架图 14

2.3.2.客户端功能模块 14

2.3.3.客户端界面设计 16

2.4.数据流程图 20

2.4.1.客户端连接流程图 2.0.

2.4.2.上传子模块流程图 2.3.

2.4.3.下载子模块流程图 24

3.F TP客户端程序实现 26

3.1.WP F界面设计 26

3.1.1.首页界面详细设计 2.6.

3.1.2.文件传输界面详细设计 28

3.1.3.操作历史记录显示界面详细设计 31

3.1.4.常用地址查询模块设计 .32

3.2.功能模块实现 34

3.2.1.连接服务器 34

3.2.2.显示服务器端文件清单 .3.5

.

3.2.3.上传文件 36

3.2.4.下载文件 38

3.2.5.查询历史记录 39.

3.2.6.常用地址管理 41

4.数据库建设 42.

4.1. 数据库表结构 42

4.2. 数据库关系模型 43.

4.3. 数据库ER图 .4.3

.

4.4. 数据库建表语句 44.

5.结语 44参考文献 45

基于C#的FTP客户端设计与实现

服务器------

服务器a A

用户

用户al

文件传输系统

图1-1 FTP工作模式图

上图中用户PI开始控制连接控制连接与Telnet协议很象。在开始阶段标准FTP命令由用户PI产生并通图1-2过控制连接传送到服务器进程。服务器PI向用户PI返回标准应答。FTP命令指定数据连接参数和文件系统操作。用户DTP在特定数据端口侦听服务器开始数据连接并以指定的参数开始数据传输。数据端口不必在开始FTP命令的机器上但用户或用户FTP进程必须确定它在指定的数据端口上侦听.这个数据连接是全双工的。

1. F TP客户端总体设计

1.1. 设计目的及开发环境

1.1.1. 设计目的

FTP早已应用在网络的各个方面 比如我们在访问网络上的资源时经常会遇到需要连接FTP服务器来下载或者你制作了一个网站想要将其上传至服务器让大家能

够访问它这个时候就会用到FTP客户端。虽然平时使用windows自带的IE浏览器即可实现对FTP服务器的访问但是IE只是个很粗糙的FTP客户端。 IE浏览器在6.0以下的版本不支持P AS V方式访问服务器而且IE浏览器在登录FTP服务器的时候无法查看返回的信息在出错的时候无法找到错误的原因 因此在使用上很不方便。现在大多数的FTP客户端软件都是收费版的而且以英文版居多使用上操作很复杂 目前流行的有CoreFtp、 AceFtp、 FtpVoyager等但是大多数用户并不习惯使用这些软件 。本文所设计的FTP客户端则适合大多数用户使用界面设计的很简单使用户可以一目了然而且具备FTP客户端的基本功能可以作为下载、上传文件的工具来使用。

1.1.2. NET环境简介

Visual Studio.NET是一个开发和运行软件的新环境便于开发基于网络的服务拥有丰富的运行库支持多种编程语言编写的组件具有跨语言平台的互操作能力。 C#是.NET平台中最重要的语言它本身没有类库而是使用.NE T框架所提供的统一类库用户也可以定义特定域的属性并将它们应用于任何语言元素如类、接口等所以对网络应用程序提供完整的支援这使得程序员能够在新的微软•NET平台上快速开发出种类丰富的应用程序。

1.1.3. FtpWebRequest类

C#.NET类库的存在使它适合于一个不断发展的环境 。在类库中我们可以自由地加入新的方法和实例变量而不会影响用户程序的执行 。

.NET平台封装了实现FTP功能的一些基础类位于命名空间为S ys te m.Ne t下的FtpWebRequest类用于实现文件传输协议FTP客户端的一些基本功能。二次圭寸装了类

FFftpPassword(登录密码)和FtpWebRequest reqFTP。

本文所使用的FtpWebRequest类的构造方法和主要方法如下

FtpWebRe que st reqFtp=(FtpWe bRe que st )FtpWe bRe que st .Cre ate(ne w Uri (P ath));

此构造函数利用给出的主机名建立一条 FTP连接 目的连接地址为Path所指定的地址并建立URI对象。reqFtp.Us eB inary=true;

这条程序指定传输类型为B i nar y。reqFtp.Credentials=new NetworkCredential (ftpUserId,ftpPassword);

此方法利用参数ftpUserId和ftpPassword登录到FTP服务器。使用过In ternet的用户应该知道匿名F TP服务器的登录用户名为a no nymo us密码一般用自己的电子邮件地址。

1.2.系统UM L分析

1.2.1.FTP客户端用例图

1)0层用例图

图1-10层用例图

用户通过Ftp客户端系统进行文件传输 。

2) 1层用例图

0.5*OperatUsefu Address

图1-21层用例图

在Ft p客户端系统中主要包括六个用例分别是列出服务器端文件列表

(ListServerFile)、从服务器端下载文件 (DownLoadFile)、 向服务器端上传文件

(UpLo adFile)、列出历史记录(ListHistory)、对常用地址的操作

(OpeatUsefulAddress )和输入用户登录信息(EnterUserInfo)。其中每一个用例都包含EnterUserInfo用例列出服务器文件列表(ListServerFile)用例扩展了下载文件(DownLoadFile)用例。

3)二层用例图a.ListServerFileList子用例图。

图1-32层用例图

ListServerFileList用例包含了两个子用例分别为列出服务器端文件列表

(Sho wServerFileList)、打开目录(Change Directory)。打开目录用例指的是打开服务器端子目录获取子目录。b.OperatUsefulAddress 子用例图。

图1-4 OperatUsefulAddress子用例图

OperatUsefulAddress 用例包含了两个子用例图分别为显示常用的ftp服务器端地址(ShowUserfulAddress )、添加常用的服务器地址 (AddUsefulAddress )。

1.2.2.FTP客户端主要序列图

1)ShowServerFileList序列图

5 ApplyljstFiWl'ifleihodll

LisiRfi spcwse Stream

FUsList

图1-5 ShowServerFileList序列图

2)Cha ngeDirectory 序列图

-------------------------------------------------------------------------- --------------- --------------------------------------------------------------

----- conriKtionRtspc

List ReBp an&&Stream

FikList

图1-6 Cha ngeDirectory 序列图

3)Dow nLoadFile序列图

Linode十八周年及未来展望

这两天Linode发布了十八周年的博文和邮件,回顾了过去取得的成绩和对未来的展望。作为一家运营18年的VPS主机商,Linode无疑是有一些可取之处的,商家提供基于KVM架构的VPS主机,支持随时删除(按小时计费),可选包括美国、英国、新加坡、日本、印度、加拿大、德国等全球十多个数据中心,所有机器提供高出入网带宽,最低仅$5/月($0.0075/小时)。This month marks Linod...

bgpto:独立服务器夏季促销,日本机器6.5折、新加坡7.5折,20M带宽,低至$93/月

bgp.to对日本机房、新加坡机房的独立服务器在搞特价促销,日本独立服务器低至6.5折优惠,新加坡独立服务器低至7.5折优惠,所有优惠都是循环的,终身不涨价。服务器不限制流量,支持升级带宽,免费支持Linux和Windows server中文版(还包括Windows 10). 特色:自动部署,无需人工干预,用户可以在后台自己重装系统、重启、关机等操作!官方网站:https://www.bgp.to...

小白云 (80元/月),四川德阳 4核2G,山东枣庄 4核2G,美国VPS20元/月起三网CN2

小白云是一家国人自营的企业IDC,主营国内外VPS,致力于让每一个用户都能轻松、快速、经济地享受高端的服务,成立于2019年,拥有国内大带宽高防御的特点,专注于DDoS/CC等攻击的防护;海外线路精选纯CN2线路,以确保用户体验的首选线路,商家线上多名客服一对一解决处理用户的问题,提供7*24无人全自动化服务。商家承诺绝不超开,以用户体验为中心为用提供服务,一直坚持主打以产品质量用户体验性以及高效...

ftp客户端为你推荐
地图应用手机地图软件那么多,都不知道用哪个好了?rawtools照片上面的RAW是什么意思,为什么不能到PS中去编辑同ip网站同IP网站9个越来越多,为什么?www.55125.cn如何登录www.jbjy.cnmole.61.com谁知道摩尔庄园的网址啊www.33xj.compro/engineer 在哪里下载,为什么找不到下载网站?5xoy.comhttp://www.5yau.com (舞与伦比),以前是这个地址,后来更新了,很长时间没玩了,谁知道现在的地址? 谢谢,www.kanav001.com翻译为日文: 主人,请你收养我一天吧. 带上罗马音标会更好www杨丽晓博客明星的最新博文www.36ybyb.com有什么网址有很多动漫可以看的啊?我知道的有www.hnnn.net.很多好看的!但是...都看了!我想看些别人哦!还有优酷网也不错...
最便宜的vps qq云存储 免费申请网页 hawkhost优惠码 新站长网 福建天翼加速 促正网秒杀 免费mysql 帽子云 工信部icp备案号 网站木马检测工具 ntfs格式分区 域名接入 流量计费 什么是服务器托管 vip购优惠 英国伦敦 镇江高防 工信部icp备案查询 阵亡将士纪念日 更多