相关疑难解决方法(0)

使用C/C++(GCC/G ++)在Linux中使用套接字编程发送和接收文件

我想使用能够发送和接收文件的套接字和C/C++语言实现在Linux上运行的客户端 - 服务器体系结构.是否有任何库使这项任务变得简单?有人可以提供一个例子吗?

c c++ sockets linux network-programming

37
推荐指数
4
解决办法
11万
查看次数

使用Unix上的套接字在C中发送和接收文件(服务器/客户端)

首先,谢谢大家阅读和帮助,我非常感激.
第二,我很抱歉,但我还是这个网站的新手,英语不是我的母语,所以我可以做一些格式和语言错误.我提前道歉.
另外,我的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)

c sockets linux file send

6
推荐指数
1
解决办法
5万
查看次数

标签 统计

c ×2

linux ×2

sockets ×2

c++ ×1

file ×1

network-programming ×1

send ×1