一、什么是FTP
FTP(File Transfer Protocol,文件传输协议) 是 TCP/IP 协议组中的协议之一。FTP协议包括两个组成部分,其一为FTP服务器,其二为FTP客户端。其中FTP服务器用来存储文件,用户可以使用FTP客户端通过FTP协议访问位于FTP服务器上的资源。在开发网站的时候,通常利用FTP协议把网页或程序传到Web服务器上。此外,由于FTP传输效率非常高,在网络上传输大的文件时,一般也采用该协议。
二、FTP能做什么
FTP的主要作用,就是让用户连接上一个远程计算机(这些计算机上运行着FTP服务器程序)察看远程计算机有哪些文件,然后把文件从远程计算机上拷到本地计算机,或把本地计算机的文件送到远程计算机去。
三、FTP传输模式
1.文本传输模式(ASCII)
用于传输文本文件(特别是脚本);一般脚本在不同操作系统中无法传输,后缀不同
2.二进制传输模式(Binary)
用于传输图片、视频等普通文件;原封不动地传
四、利用FTPlib写一个ftp客户端
4.1 新建项目,VS2019
4.2 下载
下载ftplib,并将ftplib.cpp和ftplib.h放入项目目录中
github下载地址:https://github.com/wuaizxd/ftplibpp
4.3 配置
在.h文件中定义 NOLFS NOSSL,并包含winsock.h
在项目属性->连接器->输入->附加依赖项中添加ws2_32l.ib
新建一个Main函数加入以下代码,此时一个简单的客户端就编写完成 ,下面就来测试一下
当然你还需要一个FTP服务端与代码搭配测试,网上有大把的测试工具我就不一一介绍了,推荐一款FILEZilla_Server还挺好用的。