毕业设计(论文)基于C语言的FTP软件的设计

上传人:hs****ma 文档编号:431003518 上传时间:2022-10-24 格式:DOC 页数:19 大小:209.53KB
返回 下载 相关 举报
毕业设计(论文)基于C语言的FTP软件的设计_第1页
第1页 / 共19页
毕业设计(论文)基于C语言的FTP软件的设计_第2页
第2页 / 共19页
毕业设计(论文)基于C语言的FTP软件的设计_第3页
第3页 / 共19页
毕业设计(论文)基于C语言的FTP软件的设计_第4页
第4页 / 共19页
毕业设计(论文)基于C语言的FTP软件的设计_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《毕业设计(论文)基于C语言的FTP软件的设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于C语言的FTP软件的设计(19页珍藏版)》请在金锄头文库上搜索。

1、基于C语言的FTP软件的设计摘 要文件传输协议 (File Transfer Protocol, FTP),它是目前Internet上使用得最广泛的文件传送协议。起初,FTP并不是应用于IP网络上的协议,而是20世纪6080年代美国国防部组建的ARPANET网络中,用于计算机间的文件传输的协议。时至今日,FTP仍然保持其可靠性,高速地传输文件,它还允许文件远程存取。这使得用户可以在某个系统上工作,而将文件存贮在别的系统。为了用户更方便的使用FTP服务,提供更好的人机交互界面,本课题将使用JAVA以及JBuilder的ftpclient库,基于Client/Server的架构方式,编写一个友善界

2、面的FTP客户端工具,实现服务器连接、远程与本地目录浏览、文件上传和下载等基本FTP工具常用功能。 关键词: FTP;上传;下载The Design and Implementation of FTP ClientAbstractFile Transfer Protocol (FTP), which is the most widely used protocol for transmission at present. In the beginning, the FTP is not used on the IP network, but used in the United States

3、Department of Defense network for the computer file transfer agreement in the 1960s to 1980s. Today, FTP is maintaining its reliability, high-speed transmission of documents, it also allows remote access to documents, Users can manipulate data in other different system, to make users more convenient

4、 use FTP services, have a better man-machine interface, this system will be written by Java, JBuilder, and the ftpclient library. Basing on Client/Server structures, to prepare a FTP client tool with a friendly interface, it can login to the server, browse remote and local directory, upload and down

5、load.Key words: FTP; Upload; Download目 录论文总页数:20页 1 引言11.1选题背景11.2 选题目的12 相关基础技术与开发平台12.1 JAVA技术12.1.1 JAVA简介12.1.2 C/S架构简介22.2 FTP基础32.3 开发平台43系统需求分析与总体设计43.1 需求分析43.2 设计思路53.3实现思路54 系统模块的实现74.1 界面模块实现74.2 登录模块实现84.3 浏览程序104.3.1浏览服务器端目录程序104.3.2本地浏览程序124.4文件下载和上传程序134.4.1文件下载程序134.4.2文件上传程序135 系统测试

6、及问题处理155.1测试环境155.2 测试结果155.2.1登录模块测试155.2.2系统兼容性测试165.3 测试总结16结 论17参考文献18第 2 页 共 20 页1 引言1.1选题背景FTP是互联网上使用最广泛的文件传输协议。在互联网早期曾占据整个互联网通信量的三分之一。它主要解决了在不同操作系统下处理文件格式的不兼容性。FTP客户端应该包含以下功能:登录,浏览目录,上传下载。传统方式需要在DOS下输入命令,对于普通用户是件极困难的事。但有了FTP客户端软件后,只要轻点几下鼠标即可完成所有操作。它已成为人们不可或缺的软件之一了。本毕业设计将介绍FTP客户端系统的设计和开发工作,因此,

7、文章将涵盖以下三个方面的内容:1.基础技术知识介绍; 2.文件传输系统的详细需求;3.介绍系统的具体实现;4.对最终系统进行测试。通过这次课题,对整个开发过程有深入的了解,提高实践能力。FTP将在未来的很长时间里作为主要的文件传输协议,使用前景仍然宽广,功能会更加强大。1.2 选题目的FTP是Internet上使用最广泛、是共享资源的主要途径之一。FTP服务是以它所使用的文件传输协议(File Transfer Protocol)命名的。它的特点是访问方便,操作简单,易于管理。如今Internet上有许多的资源都是以FTP的形式提供的,包括各种文档、软件工具包等等。选择此课题作为毕业设计,是希

8、望将平日学习累积的知识用于实践,开发出该系统的各项功能,使用户很简单的就能登录FTP服务器、上传下载数据等功能的需求。与此同时,在开发中学会发现解决问题,提高JAVA开发能力,为今后的工作、学习、项目开发累积实践经验。所以选择了Java语言来开发实现文件传输功能的FTP客户端。2 相关基础技术与开发平台综合个人平日学习内容和语言掌握的熟练度情况,选用了JAVA作为该系统的编程语言,JBuilder 9作为开发的平台。系统界面模块可以使用Swing、AWT,制作出其GUI部分。2.1 JAVA技术2.1.1 JAVA简介Java是Sun公司推出的一种编程语言。Java语言的设计集中于对象及其接口

9、,它提供了简单的类机制以及动态的接口模型,高度抽象,采用纯面向对象编程的思想和方法。Java还带有很多的扩展的类包(Package),在程序中可以轻松调用,简化程序员的工作。Java程序运行的硬件或软件环境,称为平台。Java平台包括2个部分:Java虚拟机和Java应用程序接口。Java API:Java应用程序接口,用于Java程序的使用和Java虚拟机的接口。Java虚拟机用于将Java字节码翻译成特定机器码。基于硬件的平台,即Java程序运行的特定的硬件环境。图1 JAVA平台 2.1.2 C/S架构简介客户机/服务器在分布处理过程中,使用基于连接的网络通信模式。该通信模式首先在客户机

10、和服务器之间定义一套通信协议,并创建一Socket类,利用这个类建立一条可靠的链接;然后,客户机/服务器再在这条链接上可靠地传输数据。客户机发出请求,服务器监听来自客户机的请求,并为客户机提供响应服务。这就是典型的“请求-应答”模式。下面是客户机/服务器的一个典型运作过程: l(1)服务器监听相应端口的输入; l(2)客户机发出一个请求; l(3)服务器接收到此请求; l(4)服务器处理这个请求,并把结果返回给客户机; (5)上述过程,直至完成一次会话过程。图2 2层C/S结构图2.2 FTP基础文件传送协议FTP(File Transfer Protocol)是Internet文件传送的基础

11、。通过该协议,用户可以从一个Internet主机向另一个Internet主机拷贝文件。与大多数Internet服务一样,FTP也是一个客户机/服务器系统。用户通过一个支持FTP协议的客户机程序,连接到在远程主机上的FTP服务器程序。用户通过客户机程序向服务器程序发出命令,服务器程序执行用户所发出的命令,并将执行的结果返回到客户机。比如说,用户发出一条命令,要求服务器向用户传送某一个文件的一份拷贝,服务器会响应这条命令,将指定文件送至用户的机器上。客户机程序代表用户接收到这个文件,将其存放在用户目录中。在FTP的使用当中,用户经常遇到两个概念:下载(Download)和上载(Upload)。“下

12、载”文件就是从远程主机拷贝文件至自己的计算机上;“上载”文件就是将文件从自己的计算机中拷贝至远程主机上。用Internet语言来说,用户可通过客户机程序向(从)远程主机上载(下载)文件。图3 系统工作简易流程FTP客户端设计的原理,FTP使用两条TCP连接来完成文件传输:控制连接与数据连接。控制连接用于传输控制,数据连接用于数据输送。在服务器启动后,服务器就会在端口21等待客户的连接请求,有用户需要传输文件时,客户与服务器的端口21建立一个控制连接,用来传送客户的命令和服务器的应答,该连接一直保持到客户与服务器通信结束为当客户发出数据传输命令时,服务器会主动与客户建立数据连接,并与其进行数据交

13、换。客户端用户并不直接处理控制连接上的FTP命令和FTP响应,而是由两个协议解释器进行处理。用户接口为客户端用户提供一定形式的输入界面,接收用户的命令,将其转换成标准的FTP命令,最终将控制连接上的FTP响应转换成用户可理解的方式。在客户与服务器的整个连接期间,控制连接必须保持,而数据连接却可以根据请求动态地建立和关闭。在最常用的流模式中,文件结束是用数据连接的关闭来表示的,换句话说,每传输一个文件或文件列表,系统就会再建立一个新的数据连接。图4 FTP使用的两个TCP连接2.3 开发平台本文件传输系统是采用Borland公司公司推出的JBuilder作为开发平台,它是一款优秀的Java ID

14、E集成开发环境工具,JBuilder 9是目前的较新的版本它比以前的版本更加简单和直观,方便上手在这个版本中Borland集成目前众多JAVA开发的优秀技术,如:工程管理、单元测试、代码审查、撰写Javadoc说明文档等等,极大的方便了Java开发人员的工作。如果用户既要求易于进行可视化布局,又要求有较大的灵活性,JBuilder就是最好的选择。3系统需求分析与总体设计3.1 需求分析3.1.1 用户需求软件要简单易上手,能够匿名或者使用帐号登录到用户指定的服务器上,进行访问和数据的上传下载。3.1.2 功能需求该系统主要包括以下几个方面:1.可视化的交互界面模块;2.登录服务器模块;3.浏览

15、服务器/本地目录和文件模块;4.上传/下载文件模块。由这四个模块构成该系统。3.1.3 性能需求:整个系统操作应当简便,界面友好,运行稳定,执行速度快。系统本身运行对计算机硬件平台和操作系统平台要求适中。3.2 设计思路上传下载程序主要完成文件的传输,是系统的核心模块。Jbuilder9提供的FTP控件已经对其进行了类封装,因而对用户而言它是透明的,不必再去编程解释响应消息等,这就是控件的好处。这样使用JBuilder9,就节约了大量的开发时间。即使对FTP不是很了解,都可以很快建立起一个FTP客户端程序来。由于本程序只是FTP客户端,下面将分别对整个系统的图形界面、登录模块、远程浏览模块、本地浏览模块、上传模块和下载模块六大模块的程序实现细节进行详细介绍。登录模块服务器目录浏览模块上传模块本机目录浏览的设计FTP客户端下载模块图5 系统模块图3.3实现思路在Jbuilder9环境所提供的扩展包中,已经提供了一些网络类的类库.ftp.FtpClient.,该类库主要用于建立FTP连接的类。利用此类的方法,我们可以远程登录到FTP服务器,列出该服务器上的目录,设置传输协议,以及传送文件。FtpClient类涵盖了几乎所有FTP

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号