论文基于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版本的比较

gcorelabs:CDN业务节点分布100多个国家地区,免费版提供1T/月流量

卢森堡商家gcorelabs是个全球数据中心集大成的运营者,不但提供超过32个数据中心的VPS、13个数据中心的cloud(云服务器)、超过44个数据中心的独立服务器,还提供超过100个数据中心节点的CDN业务。CDN的总带宽容量超过50Tbps,支持免费测试! Gcorelabs根据业务分,有2套后台,分别是: CDN、流媒体平台、DDoS高防业务、块存储、cloud云服务器、裸金属服务器...

raksmart:年中大促,美国物理机$30/月甩卖;爆款VPS仅月付$1.99;洛杉矶/日本/中国香港多IP站群$177/月

RAKsmart怎么样?RAKsmart发布了2021年中促销,促销时间,7月1日~7月31日!,具体促销优惠整理如下:1)美国西海岸的圣何塞、洛杉矶独立物理服务器低至$30/月(续费不涨价)!2)中国香港大带宽物理机,新品热卖!!!,$269.23 美元/月,3)站群服务器、香港站群、日本站群、美国站群,低至177美元/月,4)美国圣何塞,洛杉矶10G口服务器,不限流量,惊爆价:$999.00,...

飞讯云E5-2678V3 64GB,湖北十堰100G高防物理机330元/月

飞讯云官网“飞讯云”是湖北飞讯网络有限公司旗下的云计算服务品牌,专注为个人开发者用户、中小型、大型企业用户提供一站式核心网络云端部署服务,促使用户云端部署化简为零,轻松快捷运用云计算。飞讯云是国内为数不多具有ISP/IDC双资质的专业云计算服务商,同时持有系统软件著作权证书、CNNIC地址分配联盟成员证书,通过了ISO27001信息安全管理体系国际认证、ISO9001质量保证体系国际认证。 《中华...

ftp下载工具为你推荐
快递打印如何快递打印快递单暴风影音怎么截图暴风影音3 如何截图打开网页出现错误为什么打不开网页,出错arm开发板开发板是什么?如ARM开发板,DSP开发板等。。它和最终目标板有何区别?lockdowndios8.1怎么激活内置卡贴srv记录如何验证是否为域控制器创建了 SRV DNS 记录什么是云平台什么是云平台管理软件,一个云平台软件应该具有哪些基本功能如何清理ie缓存怎么清除IE缓存请客网有没有请客吃饭类的网站呢?哪个比较专业呢?有没有官方的呢?液晶显示器电源维修液晶显示器通电无显示应如何维修?
网通vps 128m内存 美国仿牌空间 directadmin 促正网秒杀 福建铁通 如何安装服务器系统 独立主机 东莞主机托管 华为k3 浙江服务器 lamp怎么读 万网主机 卡巴斯基官网下载 黑科云 深圳主机托管 文件传输 xendesktop 最好的空间日志 电脑主机结构图 更多