论文基于QT的FTP下载工具-学士学位论文

ftp下载工具  时间:2021-02-23  阅读:()

毕业设计论文

设计(论文)题目 基于QT的FTP下载工具学生姓名 指导教师 讲师二级学院 信息技术学院 专 业 计算机科学与技术班 级 计算机科学与技术单 学 号提交日期2013年4月25 日 答辩日期 2013年5月 4 日

xxxxx学院学位论文使用授权声明

金陵科技学院有权保留本人所送交学位论文的复印件和电子文档可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外允许论文被查阅和借阅可以公布包括刊登论文的全部或部分内容。论文的公布包括刊登授权金陵科技学院教务处办理。

学生签名 指导教师签名 日 期

xx科技学院学士学位论文 目录

目录

摘要. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .IIII

Abstract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .IV

1引言. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1. 1课题背景. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.2课题意义. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.3 QT介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1

1.3. 1 QT语言的特性. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

1.3.2 QT的优势. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

1.3.3 QT/Embedded介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3

1.4 FTP通信协议. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .4

2 QT架构与平台搭建. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

2. 1 QT的架构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

2.2 QT的组成. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .6

2.3 QT开发平台的搭建. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .7

2.3. 1在虚拟机Vmware下安装Ubuntu. . . . . . . . . . . . . . . . . . . . . . . . . .7

2.3.2 QT SDK及QT Creator工具的安装. . . . . . . . . . . . . . . . . . . . . . .8

3系统设计与实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3. 1系统分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3. 1. 1功能设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3. 1.2具体需求. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

3.2程序实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

3.2. 1使用Qt进行GUI开发的一般流程. . . . . . . . . . . . . . . . . . . . . . .11

3.2.2下载工具的界面设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11

3.2.3具体功能实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13

4系统测试. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

4. 1 QT Creator调试器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

4.2 QT调试方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22

I

xx科技学院学士学位论文 目录

4.3出现的错误及解决方案. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

4.4 FTP下载工具的编译与运行. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

4.5系统存在的问题. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26

5总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .27

参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28

致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29

II

xx科技学院学士学位论文 摘要

基于QT的FTP下载工具

摘要

随着嵌入式系统、 图形用户界面GUI 的广泛应用 实时嵌入式系统对GUI的需求越来越明显而这一切均要求有一个高性能、 高可靠的GUI支持。 QT作为一种先进的跨平台语言可以在Windows、 Linux以及Symban和众多的嵌入式场合发挥作用。

本文首先阐述了QT的架构和特点及Ftp通信协议的原理然后在分析需求的基础上详细论述了利用Qt4. 0设计出该Ftp下载工具的具体方法。该下载工具实现了给出计算机名称或者Ip地址进行Ftp登录并能查看本地和服务器端的文件信息列表从而对指定文件的下载和上传功能具有一定的实用性和方便性。

关键词 QT语言跨平台 FTP 下载

III

xx科技学院学士学位论文 Ab stract

Based on the QT FTP download tool

Abstract

Along with the embedded system, the graphical user interface(Gui) extensive applicationof the embedded system, real-time demand for Gui is more and more obvious, and all of theseare required to have a high performance,high reliability and Gui support.Qtas an advancedcross-platform language, can in Windows, Linux and Symban and numerous embeddedoccasions play a role.

This article elaborates the structure and characteristics and Qt Ftp communication protocol,then in the principle based on analysis demand, elaborated the use Qt4.0 design the specificmethods of Ftp download tools.The download tool to achieve produces the computer name or Ipaddress for Ftp login, check local and server-side file information list, and can realize to thespecified file download and upload function,has a certain practicality and convenience.Key words:QT language;cross-platform;Ftp protocol ;File Download

IV

xx科技学院学士学位论文 第1章引言

1 引言

1.1课题背景

21世纪是网络的时代是信息的时代是多媒体的时代。 Int e rn e t技术的迅猛发展与普及推动了世界范围的信息传输和信息交流。随着Internet的发展 Internet将提供越来越多的服务。但就目前而言 网民使用较多的主要有下列服务 电子邮件E-mail文件传输FTP远程登录Telnet万维网World Wide Web新闻组Newsgroup/Usenet和电子公告牌BB S聊天系统chat。 Internet如此流行其中FTP功不可没。成千上万的数据、软件分布在世界各地有了它足不出户只要敲几个字就能轻而易举地得到想要的。现在全世界已有1000多个FTP文件服务器对所有Internet用户开放用户可以通过与Int e rn et相连的计算机把自己需要的文件传过来。

目前已经有许多互联网站点都建立了可供大众访问的资料库这些资料都可以被通过FTP获取。匿名FTP使用户有机会存取到世界上最大的信息库这个信息库是日积月累起来的并且还在不断增长永不关闭涉及到几乎所有主题。而且这一切是免费的。 Internet之所以能延续到今天是因为人们使用通过标准协议提供标准服务的程序[1] 。

由FTP提供的文件传送是将一个完整的文件从一个系统复制到另一个系统中。要使用FTP就需要有登陆服务器的注册账号或者通过匿名FTP的服务器来使用。与Telnet类似 FTP最早的设计是用于两台不同的主机这两个主机可能运行在不同的操作系统下、使用不同的文件结构、并可能使用不同字符集。但不同的是 Telnet获得异构性是强制两端都采用同一个标准使用7比特ASCII码的NVT。而FTP是采用另一种方法来处理不同系统间的差异 FTP支持有限数量的文件类型如ASCII文件二进制文件等等和文件结构面向字节流或记录。

目前在国内外基于FTP的网络通信仍然是Internet上文件传输的通用方法就如同当初FTP刚出现的时候 FTP并没有有多大的变化但是在Internet迅猛发展的形势下其安全问题还是日益突出出来。但是FTP还是非常的流行大部分的网站以及论坛等等涉及到用户下载的网站都提供了FTP服务特别是校园中也可以利用FTP服务器来使身处校园中的每个人都可以通过FTP来下载或共享文件这使得每个人都能享受到网络的便捷[2] 。

1.2课题意义

本系统就是利用Qt所带的QFTP类库设计出具有良好交互界面从而简化用户操作的难度使用户能够轻松简单的使用FTP享受FTP所带来的便利。

1.3 QT介绍

QT是一个多平台的C++图形用户界面应用程序框架而且QT提供了一组更容易理解的GUI类运行的更快另外QT特有的信号和槽更易使用。 QT面向对象且很容易扩展,并且允许真正地组件编程。 QT工具包是一个C++的类库并且是使用“一次编写

1

xx科技学院学士学位论文 第1章引言

随处编译”的方式构建多平台的图形用户界面程序的一套工具。 由于QT特性平台无关性、优化了内存和资源的利用、拥有自己的窗口系统、模块化可裁剪性、代码完全公开[3] 。

1.3.1 QT语言的特性

QT是Trolltech公司的一款图形开发产品它采用完全的面向对象技术来进行图形应用程序的设计允许真正的组件编程 Qt是一个全面的C++应用程序开发框架它包含一个类库和用于跨平台开发及国际化的工具可以开发高性能跨平台客户端 以及服务器端的应用程序。

Qt类库是一个拥有超过400个C++类同时不断扩展的库。它封装了用于端到端应用程序开发所需要的所有基础结构。优秀的Qt应用程序接口包括成熟的对象模型 内容丰富的集合类 图形用户界面编程与布局设计功能数据库编程 网络 XML 国际化OpenGL集成等等。

Qt设计者是一个功能强大的GUI布局与窗体构造器能够在所有支持平台上 以本地化的视图外观与认知快速开发高性能的用户界面。

Qt语言家是一套用来消除国际化工作流程中所带来障碍的工具。使用Qt语言家开发小组可把应用程序的翻译转换外包给非技术性翻译人员从而可增加精确度大大加快本地化处理过程。

Qt助手一个完全可自定义重新分配的帮助文件或文档浏览器它可与基于Qt的应用程序运行。使用Qt助手开发小组同样能够很大程度上加快文档的处理过程[4] 。

1.3.2 QT的优势

作为嵌入式图形界面开发工具 QT优势很多有如下一些

1.支持平台广泛

QT应用程序接口与工具兼容于所有支持平台让开发员们掌握一个应用程序接口便可执行与平台非相关的应用开发与配置其支持的平台有 QT/Windows WindowsXP,2000,NT4,Me/98、 QT/Mac(Mac OS X)、 QT/X 11(Linux,Solaris\HP-UX,IRIX,AIX)等。

2.封装多

QT对不同平台的专门QPI进行了专门的封装文件处理、 网络等。

3.面向对象

QT具有模块设计和注重软件构件或元素的可重用性的特点。

4.构件支持

QT提供信号signal和插槽slot概念这是一种类型安全的方法它允许回调

2

xx科技学院学士学位论文 第1章引言

冰支持对象之间在彼此不知道对方信息的情况下进行合作这使得QT非常适合于真正的构件编程。

5.友好的联机帮助

QT提供了大量的联机参考文档有超文本HTML方式也有UNIX帮助手册和补充说明并且对于初学者其中的指南将一步步介绍如何进行QT编程。

6.便利性

由于Q T是一种跨平台的GUI工具包它对编程者隐藏了在处理不同窗口系统时潜在的问题 QT定义了一些类来隐藏在不同操作系统上不同处理方式下的细节问题。

7.用户自定义

使用其他的一些工具包经常会遇到这样的一种情况没有真正适合需求的组件声称自定义的组件对用户来说就像一个黑匣子。而在QT中生成用户自定义的组件非常简单而且易于修改组件的行为。

8.国际化

QT为本地化应用提供了完全的支持所有用户界面文本都可以基于消息翻译表被翻译成各国语言 QT还支持双字节16bit国际字符标准。

9.丰富的API函数

QT为专业应用提供了大量的函数在QT的API中含有大约250个C++类大多数的类都是GUI专有的。

10.可用户化外观

QT支持主题基于QT的应用程序能够在Windows外观、Motif外观 以及其他一些用户化主题之间切换。

11.完整的一套组件工具

QT编程的基本模块称之为组件组件是用户界面的组成部分 QT含有用来创建专业外观的用户界面所需要的所有组件。

1.3.3 QT/Embedded介绍

QT/Embedded为带有轻量级窗口系统的嵌入式设备提供了标准的API。 QT/Embedded面向对象的设计思想使得它能一直向前支持鼠标、键盘、 图形加速卡等附加设备。通过使用QT/Embedded,开发者可以感受到QT/X 11、QT/Windows和QT/Mac等不同的版本下使用相同的API编程带来的便利[5] 。QT/Embedded与QT/X11的Linux版本的比较如下表所示。

表1 1 QT/Embedded与QT/X1 1的Linux版本的比较

GigsGigsCloud($26/年)KVM-1GB/15G SSD/2TB/洛杉矶机房

GigsGigsCloud新上了洛杉矶机房国际版线路VPS,基于KVM架构,采用SSD硬盘,年付最低26美元起。这是一家成立于2015年的马来西亚主机商,提供VPS主机和独立服务器租用,数据中心包括美国洛杉矶、中国香港、新加坡、马来西亚和日本等。商家VPS主机基于KVM架构,所选均为国内直连或者优化线路,比如洛杉矶机房有CN2 GIA、AS9929或者高防线路等。下面列出这款年付VPS主机配置信息...

易探云月付18元起,香港/美国/深圳/北京VPS,CN2、BGP等多线路

易探云怎么样?易探云是国内一家云计算服务商家,致力香港服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。易探云服务器均选择当下热门线路,比如CN2 GIA、BGP线路、CN2线路等,所有云主机支持月付,并且首月优惠,年付优惠,优惠后香港沙田云服务器/独立ip/香港CN2线路,每月仅18元,188元/年。点击进入:易探云官方网站地址1、香港...

HostKvm:夏季优惠,香港云地/韩国vps终身7折,线路好/机器稳/适合做站

hostkvm怎么样?hostkvm是一家国内老牌主机商家,商家主要销售KVM架构的VPS,目前有美国、日本、韩国、中国香港等地的服务,站长目前还持有他家香港CN2线路的套餐,已经用了一年多了,除了前段时间香港被整段攻击以外,一直非常稳定,是做站的不二选择,目前商家针对香港云地和韩国机房的套餐进行7折优惠,其他套餐为8折,商家支持paypal和支付宝付款。点击进入:hostkvm官方网站地址hos...

ftp下载工具为你推荐
windows优化大师怎么用Windows优化大师怎么用?简体翻译成繁体帮忙把繁体翻译成简体镜像文件是什么系统镜像是什么人人逛街人人逛街评论怎么不显示链接了?好像4月28日就不能显示了。是什么原因呢?网页打开很慢为什么我打开网页很慢虚拟专用网intranet,extranet,虚拟专用网与internet有什么区别与联系发邮件怎么发发邮件怎么发?微信电话本怎么用微信电话本怎么使用呀,我的电话号码是存在手机里面,用这个软件就读取不了电话,我是第一次使用网站地图制作给人看的那种,网站地图怎么做如何修改ie主页怎样修改IE主页
我的世界服务器租用 北京域名空间 万网域名管理 冰山互联 namecheap realvnc 一点优惠网 网通ip 本网站服务器在美国 cpanel空间 新家坡 ftp免费空间 鲁诺 卡巴斯基破解版 t云 日本代理ip 万网空间 cdn网站加速 supercache 电信宽带测速软件 更多