我想使用能够发送和接收文件的套接字和C/C++语言实现在Linux上运行的客户端 - 服务器体系结构.是否有任何库使这项任务变得简单?有人可以提供一个例子吗?
首先,谢谢大家阅读和帮助,我非常感激.
第二,我很抱歉,但我还是这个网站的新手,英语不是我的母语,所以我可以做一些格式和语言错误.我提前道歉.
另外,我的C知识不是那么好,但我愿意学习和提高.
现在,就此事而言:
我需要做的是创建一个客户端和一个服务器,让服务器侦听传入的连接.
然后我让客户端向服务器发送一个非常大的文本文件(我知道它只是一个文件).
然后,服务器将对该文件执行一些操作(它将在发送的文件上运行一个脚本,该脚本在输出中生成另一个名为"output.txt"的文件).然后,服务器需要将output.txt文件发送回客户端.
现在,我有点如何制作客户端和服务器(我在本网站上阅读了beej指南和其他一些内容),甚至我可能犯了一些错误.我需要一些帮助服务器恢复文件,然后调用脚本并将其他文件发送回客户端.现在我做的是服务器和客户端...我真的不知道如何继续.
在旁注中,我使用我在本网站和互联网上找到的文件制作了这些文件,我希望它们不会太乱,因为我对程序员来说并不是那么好.
这是client.c
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <netdb.h>
#include <pthread.h>
#define SOCKET_PORT "50000"
#define SOCKET_ADR "localhost"
#define filename "/home/aryan/Desktop/input.txt"
void error(const char *msg)
{
perror(msg);
exit(0);
}
int main()
{
/* Making the client */
int sockfd, portno, n;
struct sockaddr_in serv_addr;
struct hostent *server;
char buffer[256];
portno = atoi(SOCKET_PORT);
sockfd = socket(AF_INET, SOCK_STREAM, 0);
if (sockfd < 0)
error("ERROR opening socket"); …Run Code Online (Sandbox Code Playgroud)