您当前的位置: 首页 >  c++

鱼儿-1226

暂无认证

  • 0浏览

    0关注

    1100博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

使用c++实现一个FTP客户端(二)

鱼儿-1226 发布时间:2020-08-24 14:34:39 ,浏览量:0

 

  客户端使用了Windows Socket提供的API,支持上传、下载、删除、查看文件,断点续传,二进制/ASCII模式切换,被动模式切换,记录操作日志等功能。

  代码包含的类如下:

    ①MySocket类,对SOCKET进行了简单的封装

复制代码

 1 //对winsock SOCKET的封装
 2 class MySocket
 3 {
 4 public:
 5     MySocket();
 6     //~MySocket();
 7     //重载向SOCKET类型转换的运算符
 8     operator SOCKET() const; 
 9     //设置地址信息
10     void SetAddrInfo(std::string host, int port);
11     bool Connect();
12     //bool Disconnect();
13     bool Create(int af = AF_INET, int type = SOCK_STREAM, int protocol = IPPROTO_TCP);
14     bool Close();
15     //获取主机ip
16     std::string GetHostIP() const; 
17     //获取主机端口
18     int GetPort() const; 
19 private:
20     SOCKET sock;
21     SOCKADDR_IN addr_in; //记录连接的服务器的地址信息
22     bool conn_flag; //判断是否已连接
23 };

复制代码

    ②Record类,存储了客户端与服务器的交互信息的数据结构

复制代码

 1 //枚举类型,CMD代表命令信息,RES代表响应信息
 2 enum log_type { CMD = 1, RES = 2 };
 3 
 4 //与服务器的交互信息
 5 class Record
 6 {
 7     friend std::ostream & operator            
关注
打赏
1604459285
查看更多评论
立即登录/注册

微信扫码登录

0.1722s