网络编程练习 ftp 文件传输

MYFTP是一款实现FTP功能的软件,分为服务器端和客户端。服务器端指定FTP目录,接收客户端命令请求,客户端则提供用户界面,通过各种命令如CONNECT、LOGIN、DIR、GET、PUT、HELP和BYE与服务器交互,实现文件的上传和下载。该软件支持多种编程语言和工具开发,如VB、JAVA、C#、Delphi、VC。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


题目一:文件传输

软件名:MYFTP(分服务器端和客户端两部分)

功能:实现类似FTP的功能(在FTP服务器与客户端之间传送文件)。

编程语言及工具:自选(如VB、JAVA、C#、Delphi、VC)

描述:

服务器端:1.指定一个目录作为FTP目录(之后所有的文件操作均在此目录下进行),

          2.接收客户端的命令请求并提供相应的服务。

客户端:完成与FTP用户的人机界面,以命令的方式向服务器请求服务,主要的命令有:

  1.CONNECT IP地址  端口号

 指定FTP服务器的IP地址和端口号,连接到服务器。

 响应:连接成功/失败。

2LOGIN 用户名

用户登录(假设在服务器端有用户管理功能)。

响应:若用户不存在,提示“无此用户”;若用户存在,提示“密码:”;用户输入密码后,若正确提示“登录成功”;若不成功,提示“密码错”。

3.DIR

显示FTP服务器的FTP目录的文件列表(假设无子目录。)

响应:目录列表(只要文件名即可)。

4. GET 文件名

将FTP目录下的文件下载到本地。

响应:传送成功/失败/无此文件。

5. PUT 文件名

将本地文件上传到FTP目录。

响应:传送成功/失败/无此文件。

6. HELP

显示MYFTP软件的功能(此命令与网络通信无关)。

7. BYE

退出MYFTP软件。


Client:

#include<iostream>
#include<winsock2.h>
/*  interfAcer  */
/*欢迎访问我的csdn blog  http://blog.youkuaiyun.com/nibiru_holmes*/
#pragma comment (lib,"ws2_32")
using namespace std;



int login() {

	char user[6] = { "user" };
	char pass[6] = { "pass" };
	char user_in[MAXBYTE] = {NULL};
	char pass_in[MAXBYTE] = {NULL};
	cout << "Please login in" << endl;
	cout << "UserName:";
	cin >> user_in;
	cout << "PassWord:";
	cin >> pass_in;
	if (!strcmp(user, user_in) && !strcmp(pass, pass_in)) { cout << "login successful!!!"<<endl;    return 1; }


	cout << "login error !!!" << endl;
	return 0;

}

void Sender(char FileName[], SOCKET clientSock) {
	char ok[1024] = { NULL };
	char SendBuf[1024] = { NULL };
	DWORD dw
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值