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

racknerd:美国大硬盘服务器(双路e5-2640v2/64g内存/256gSSD+160T SAS)$389/月

racknerd在促销美国洛杉矶multacom数据中心的一款大硬盘服务器,用来做存储、数据备份等是非常划算的,而且线路还是针对亚洲有特别优化处理的。双路e5+64G内存,配一个256G的SSD做系统盘,160T SAS做数据盘,200T流量每个月,1Gbps带宽,5个IPv4,这一切才389美元...洛杉矶大硬盘服务器CPU:2 * e5-2640v2内存:64G(可扩展至128G,+$64)硬...

AlphaVPS(€3.99/月)VPS年付15欧,AMD EYPC+NVMe系列起

AlphaVPS是一家保加利亚本土主机商(DA International Group Ltd),提供VPS主机及独立服务器租用等,数据中心包括美国(洛杉矶/纽约)、德国、英国和保加利亚等,公司办公地点跟他们提供的保加利亚数据中心在一栋楼内,自有硬件,提供IPv4+IPv6,支持PayPal或者信用卡等方式付款。商家提供的大硬盘VPS主机,提供128GB-2TB磁盘,最低年付15欧元起,也可以选择...

Hostwinds:免费更换IP/优惠码美元VPS免费更换IP4.99,7月最新优惠码西雅图直连VPS

hostwinds怎么样?2021年7月最新 hostwinds 优惠码整理,Hostwinds 优惠套餐整理,Hostwinds 西雅图机房直连线路 VPS 推荐,目前最低仅需 $4.99 月付,并且可以免费更换 IP 地址。本文分享整理一下最新的 Hostwinds 优惠套餐,包括托管型 VPS、无托管型 VPS、Linux VPS、Windows VPS 等多种套餐。目前 Hostwinds...

ftp下载工具为你推荐
文件夹删不掉为什么文件夹删除不了行业关键词为什么有些行业关键词竟价出价很低有些行业很高赵雨润星辰变电影是真的启动了吗?ps抠图技巧请教PS抠图技巧!!!童之磊湖北中文在线数字出版有限公司怎么样?网易公开课怎么下载网易公开课的视频该如何下载?开机滚动条怎么减少开机滚动条?人人逛街过节了,这儿可真热闹写一段话ejb开发EJB是什么?服务器连接异常手机服务器连接异常
租服务器 虚拟空间免费试用 国外域名 域名主机基地 怎么申请域名 lnmp 香港bgp机房 enom 主机 sugarsync 好看的桌面背景大图 国外网站代理服务器 ibox官网 京东商城0元抢购 圣诞促销 183是联通还是移动 网购分享 太原联通测速 百度云加速 starry 更多